文章目录

  • 1. 创建表
  • 2. 查看表结构
  • 3. 修改表
  • 3.1 向表中插入数据
  • 3.2删除表中的数据
  • 3.3 修改表的性质
  • 3.3.1 添加字段
  • 3.3.2 修改字段的长度
  • 3.3.3 删除字段
  • 3.3.4 修改字段名
  • 3.3.5 修改表名
  • 4. 删除表
  • 5. 备份表

前言: 本文会详细的讲解,在MySQL中表的操作。


1. 创建表

基本语法

create table 表名
(
表成员变量1,表成员变量2
)character set 字符集 collate 校验规则 engine 存储引擎;
  • 表的成员变量至少有一个并且之间用,隔开,最后的成员变量后面没有,
  • 表后面可以跟字符集和校验规则这是表级别的,如果没有指定,那就默认使用它所在库的字符集和校验规则。
  • 存储引擎,指定表使用哪个存储引擎进行存储。不同的存储引擎,创建表的文件不一样。

例子:

  1. 创建一个表ly,指定它的存储引擎为myisam。
create table ly(
id int
) character set utf8 engine myisam;
  1. 创建一个表ly1,指定它的存储引擎为innodb。
create table ly1 (
id int,name char(10)
) character set utf8 engine innodb;

创建表成功后,我们去看看 这俩表的文件有何不同?

mysql变量赋值 和 查询 mysql用变量赋值创建表_java


mysql变量赋值 和 查询 mysql用变量赋值创建表_mysql_02


就是这样哈,验证一下现象,也不细讲缘由。

2. 查看表结构

基本语法:desc + 表名

比如:查看ly表的结构:

mysql变量赋值 和 查询 mysql用变量赋值创建表_java_03

  • field:字段名称
  • type:字段类型
  • null:是否允许为空
  • key:索引类型
  • default:默认值
  • extra:扩充

3. 修改表

3.1 向表中插入数据

基本语法:instert into 表名 (字段名) values (插入数据);

比如使用ly1表:

mysql变量赋值 和 查询 mysql用变量赋值创建表_mysql变量赋值 和 查询_04

  1. 向ly1表插入俩组数据, 也就是id 和 name 都要进行插入:
    insert into ly1 values(1,"bod"),(2,"ff");
  2. 我只向ly1表中插入id,这就需要指定字段了:
    insert into ly1(id) values(3);
  3. 查看一下表中数据:
    select * from ly1;
  4. mysql变量赋值 和 查询 mysql用变量赋值创建表_java_05


3.2删除表中的数据

  1. 删除部分表中数据:
    delete from ly1 where id=3; 这是删除id=3的数据。
  2. mysql变量赋值 和 查询 mysql用变量赋值创建表_java_06

  3. 删除表中全部数据:
    delete from ly1;
  4. mysql变量赋值 和 查询 mysql用变量赋值创建表_字段_07

3.3 修改表的性质

以上都是对表中的数据进行修改,但是从这里开始,就是要对表的结构进行修改。

3.3.1 添加字段

alter table 表名 add (column datatype [DEFAULT expr] [column datatype] ...)

mysql变量赋值 和 查询 mysql用变量赋值创建表_mysql_08

比如我要给ly1添加一个字段sex,用于表示性别:

alter table ly1 add sex varchar(2) after name。这里的after name,意思就是说 你插入的字段的位置,在name字段的后面。当然还可以用 before name,不过它的意思是把字段插入到name字段的前面。

mysql变量赋值 和 查询 mysql用变量赋值创建表_mysql_09

3.3.2 修改字段的长度

alter table 表名 modify (column datatype [DEFAULT expr][,column datatype]...);

从上面可以看到,字段name的char长度是10,现在要求将它的长度改为20:

alter table ly1 modify name char(20);

mysql变量赋值 和 查询 mysql用变量赋值创建表_mysql变量赋值 和 查询_10

3.3.3 删除字段

删除字段后,字段下的所有数据都会被删除。

alter table 数据库名 drop (column);

删除字段要小心处理:

比如我现在要删除ly1表中的name字段:

alter table ly1 drop name;

mysql变量赋值 和 查询 mysql用变量赋值创建表_字段_11

3.3.4 修改字段名

alter table 表名 change 原字段名 改后字段名 改后字段名类型

假如:现在要求把ly1表的sex字段改名为 gender :

alter table ly1 change sex gender varchar(2);

mysql变量赋值 和 查询 mysql用变量赋值创建表_java_12


这里需要注意的就是 改后的字段名类型 不可以省略。

3.3.5 修改表名

alter table 原表名 rename to 新表名;

比如:要把ly1表名修改为 wq1:

alter ly1 rename to wq1;

mysql变量赋值 和 查询 mysql用变量赋值创建表_数据库_13


to 可以被省略;

4. 删除表

删除表前,最好把表备份好。

drop table 表名

5. 备份表

备份表,其实在上一篇文章库的操作里面有讲。大家感兴趣的话,可以去看一下我上一篇博客 MySQL —— 库的操作。