创建表
- character set 字符集 collate 校验规则 engine 存储引擎;
- 属性要用 ‘,’ 隔开,最后一个属性不加 ‘,’ ,不要忘了括号
- 其中charset = utf8 collate utf8_general_ci engine MyIsam;可以不写
create database usr_db;
use usr_db;
//创建表 user1
create table if not exists user1(id int,name varchar(20) comment '用户名',password char(32) comment '用户的密码',brithday date comment '用户的生日'
)charset = utf8 collate = utf8_general_ci engine = MyIsam;
- 两种方式选择一种即可
- 一般选择带‘=’的形式
mysql> create table if not exists user2(-> id int,-> name varchar(20) comment '用户名',-> password char(32) comment '用户的密码',-> brithday date comment '用户的生日'-> )character set utf8 collate utf8_general_ci engine InnoDB;
不同的存储引擎,创建表的文件不一样
查看表
- 显示创建use1表时的详细信息:
show create table user1;
但是一般选用格式化方便观看show create table user1 \G;
修改表 alter
修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型,表的存储引擎,添加字段,删除字段等等。
- 对表进行重命名:
alter table user1 rename to user;
其中的 to 可以省略- 向表插入元素:
insert into user values (1,'燕知春','12345','2000-10-01');
insert into user values (2,'齐夏','34512','1998-11-11');
- 增加一列并指定放在birthday的后面:
alter table user add image_path varchar(128) comment '这个是用户的头像路径' after brithday;
- 对某一列的属性进行修改:修改name,将其长度改成60
alter table user modify name varchar(60);
- 每次修改后都可通过以下语句进行查看是否修改正确
desc user;
select * from user;
show create table user;
与之前相比少了comment,说明
modify
是直接覆盖
- 删除一列:
alter table user drop password;
注意:删除列要小心,因为这一列的所以数据都会被删除- 改列名不仅需要给出列的名称,相关属性也要写上
alter table user change name xingming varchar(60);
- 删除表:
drop table user;
建议:
一般不要删除和修改表结构