mysql基础-2.mysql库表基本操作

基本命令操作

连接

// 连接本机的3306端口上的mysql服务
mysql -uroot -proot

// 连接本机的其他端口
mysql -uroot -proot -P 3307

// 连接其他主机的其他端口
mysql -uroot -proot -P 3307 -h 192.168.100.113

库操作

创建库

create database mydb;

// 设置编码与字符集
create database mydb default character set utf8 collate utf8_general_ci;

create database mydb   代表的是创建数据库 mydb 

default character  set utf8   代表的是将该库的默认编码格式设置为utf8

collate  utf8_general_ci     代表的是数据库校对规则,utf8_bin将字符串中的每一个字符用二进制数据存储,区分大小写。utf8_genera_ci不区分大小写,ci为case insensitive的缩写,即大小写不敏感。utf8_general_cs区分大小写,cs为case sensitive的缩写,即大小写敏感
// 查看库
show databases;
// 进入库
use mydb;
// 查看库里面的表
show tables;
// 查看库的编码,有的编码写中文会报错,这个要注意
show create database mydb;
// 删除数据库
drop database mydb;
// 修改库的编码
alter database mydb character set utf8;

表操作

前提必须是进入到某个库里面

建表

create table user
(
    id         int(11) primary key auto_increment not null comment '序号',                        # 主键,自动增长
    username   varchar(50) unique                 not null comment '姓名',                        # 不能为空,不能重复
    sex        boolean   default true comment '性别 1 男 0 女',                                   # tinyint(1) 一位 默认值是1
    age        int(8)    default 18 comment '年龄,默认18',                                        # tinyint(1) 一位 默认值是1
    created_at timestamp default CURRENT_TIMESTAMP on update  CURRENT_TIMESTAMP comment '创建时间' # 创建时间,时间自动创建
);
字段约束

常见的字段约束

primary Key  # 记录的唯一标识,能够通过该标识确定唯一一条记录  一般用于记录id
default # 默认值
unique # 唯一约束
not null # 空值约束,不可以为空,不写就是可以为空
auto_increment # 自动增长

// 查看表结构
desc user;
// 删除表
drop table user;
// 删除表中全部数据
delete from user where true;
// 重置自增计数器
alter table user auto_increment = 1;

// 更改表名
rename table old_user to new_user;
// 新增字段
alter table user add column nick varchar(50) null;
// 删除字段
alter table user drop column nick;

# 新增索引
alter table user add index index_name (username);
# 查看索引   默认是有一个主键索引的
show index from user;
# 删除索引
alter table user drop index index_name;

数据操作

插入数据

# 完整的插入语句
insert into user(id, username, sex, created_at) value (
    2, 'zhangsan', 0, '2023-10-17 08:15:03'
    );

# 因为有些字段设置了默认值和可以为null或自增长
insert into user(username) value ('wangwu'); # 简单插入语句

# 批量插入
insert into user(username) values ('wangwu1'),
       ('lisi'),
       ('fengfeng');

有的时候默认编码,插入中文会报错

查询

查询要后面专门讲查询,这里先掌握三个查询语句

# 查这张表的全部数据,字段全部显示
select * from user;
# 查这张表的全部数据,字段部分显示
select id,username from user;
# 条件查询,查询id为2的数据
select id,username from user where id = 2;

修改

修改的前提就是要找到数据

# 找到id为2的将 username修改为lisi123
update user set username = 'lisi123' where id = 2;

# 也可以修改多个字段
update user set username = 'lisi123', sex = 0 where id = 2;

# 也可以批量修改
update user set sex = 0 where id > 0;

# 将某个字段的值赋给其他字段
update user set username = user.nick where id = 1;
update user set  age = user.age + 1 where id=3;

删除

# 删除id为1的数据
delete from user where id = 1;
// 删除表中全部数据
delete from user where true;
// 重置自增计数器
alter table user auto_increment = 1;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值