Bootstrap

【MySQL】 表的操作

欢迎拜访雾里看山-CSDN博客
本篇主题:【MySQL】 表的操作
发布时间:2025.1.25
隶属专栏MySQL

在这里插入图片描述

创建表

格式

create table table_name (
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;
  • field 表示列名。
  • datatype 表示列的类型。
  • character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准。
  • collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准。
  • mysql表中建立属性列:列名称在前,属性在后。

使用

create table user1 (
id int,
name varchar(20) comment '用户名',
password char(32) comment '用户的密码',
birthday date comment '用户的生日'
) character set utf8 collate utf8_general_ci engine MyISAM;

在这里插入图片描述

不同引擎的区别

使用MyIsam引擎

create table user1 (
id int,
name varchar(20) comment '用户名',
password char(32) comment '用户的密码',
birthday date comment '用户的生日'
) character set utf8 collate utf8_general_ci engine MyIsam;

使用InnoDB引擎

create table user2 (
id int,
name varchar(20) comment '用户名',
password char(32) comment '用户的密码',
birthday date comment '用户的生日'
) character set utf8 collate utf8_general_ci engine InnoDB;

在这里插入图片描述
在Linux 的目录/var/lib/mysql下查找user_db内部的文件
在这里插入图片描述
可见使用MyIsam引擎的user1有三个文件,使用InnoDB引擎的user2有两个文件。
对于user1:

  • user1.frm 是表的结构文件
  • user1.MYD 是表的数据文件
  • user1.MYI 是表的索引文件

对于user2:

  • user2.frm 是表的结构文件
  • user2.ibd 是表的数据和索引文件

查看表

查看所有的表

show tables;

在这里插入图片描述

查看表内数据

select * from users;

在这里插入图片描述

查看表的详细信息

desc user1;

在这里插入图片描述

查看创建表时的详细信息

show create table user1;

在这里插入图片描述
或者

show create table user1 \G

在这里插入图片描述

修改表

在项目实际开发中,经常修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型,表的存储引擎等等。我们还有需求,添加字段,删除字段等等。这时我们就需要修改表。

修改表名称

alter table user1 rename to users;

或者

alter table user1 rename users;

在这里插入图片描述

修改列名称

alter table users change name xingming varchar(60);

在修改列的时候,新的列需要完整的定义。
在这里插入图片描述

插入数据

insert into users values(1,'张三','12345','2010-01-04');

创建新列

alter table users add image_path varchar(128) comment '用户头像路径';

或者

alter table users add image_path varchar(128) comment '用户头像路径' after brithday;

after brithday是表名这列放在brithday后面。
在这里插入图片描述
在添加新列以后,对原来表中的数据没有影响,原数据的这一列内容为空。
在这里插入图片描述

修改列

table users modify name varchar(60);

在这里插入图片描述
但是在修改列的时候,如果不加comment的内容,那么修改后将会没有
在这里插入图片描述

删除列

alter table users drop password;

在这里插入图片描述

注意:删除字段一定要小心,删除字段及其对应的列数据都没了.
删除前一定要做好备份,或者列中没有数据。

删除表

drop table user2;

在这里插入图片描述

⚠️ 写在最后:以上内容是我在学习以后得一些总结和概括,如有错误或者需要补充的地方欢迎各位大佬评论或者私信我交流!!!

;