目录

一、创建表

二、创建表案例

1、显示当前使用的数据库名

2、创建表 

2.1 MyISAM存储引擎表

2.2 InnoDB存储引擎表

三、查看表结构

 四、修改表

1、新增列 

 2、修改列类型

3、修改列名

4、修改表名 

5、删除列 

 五、删除表


表的操作至少会涉及如下两类SQL语句:

• DDL(Data Definition Language 数据定义语言):建表,删表,修改列名,新增列,删除列等。

• DML (Data Manipulation Language 数据操作语言):插入记录,删除记录,修改记录等。

其中,本次对表的操作是 DDL,操作表结构的SQL语句。


一、创建表

语法:

create table table_name (
    field1 datatype,
    field2 datatype,
    field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;

说明:

• field 表示列名。

• datatype 表示列的类型。

• character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准。

• collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准。

使用 show engines 这个SQL语句可以查看当前 MySQL 数据库支持的存储引擎:

mysql 保存表 1075 mysql表怎么保存_数据库

 其中 MySQL 默认采用的是 InnoDB存储引擎(在没有显示指明用哪个存储引擎时)。


二、创建表案例

1、显示当前使用的数据库名

mysql 保存表 1075 mysql表怎么保存_字段_02

2、创建表 

创建两个表结构,分别以 InnoDB 和 MyISAM 不同的存储引擎,进行对比:

2.1 MyISAM存储引擎表

mysql 保存表 1075 mysql表怎么保存_存储引擎_03

 在 /var/lib/mysql 这个路径下面,可以查看 user 表的结构:

mysql 保存表 1075 mysql表怎么保存_存储引擎_04

 采用 MyISAM 存储引擎建表

• user.frm (表结构)

• user.MYD (表数据)

• user.MYI (表索引)


2.2 InnoDB存储引擎表

mysql 保存表 1075 mysql表怎么保存_字段_05

  在 /var/lib/mysql 这个路径下面,可以查看 users 表的结构:

mysql 保存表 1075 mysql表怎么保存_mysql_06

采用 InnoDB 存储引擎建表

• users.frm (表结构)

• users.ibd (表数据 + 表索引)


三、查看表结构

使用 desc 表名 可以查看表的结构,示例:

mysql 保存表 1075 mysql表怎么保存_数据库_07

 其中:

• Field 表示该字段的名字

• Type 表示该字段的类型

• NUll 表示该字段是否允许为空

• Key 表示索引类型,比如:主键索引 primary key,外键索引 foreign key

• Default 表示该字段的默认值

• Extra 表示该字段额外的信息说明

查看创建表的相关细节,可以使用 show create table 表名 \G

mysql 保存表 1075 mysql表怎么保存_存储引擎_08


 四、修改表

先在之前创建的 user 表中插入两条数据:

mysql 保存表 1075 mysql表怎么保存_mysql 保存表 1075_09

1、新增列 

在 user 表中添加一个字段 path,用于保存图片路径:

mysql 保存表 1075 mysql表怎么保存_mysql_10

此时查看表结构:

mysql 保存表 1075 mysql表怎么保存_mysql 保存表 1075_11


 2、修改列类型

将 user 表中的 name 字段类型修改为 varchar(60):

mysql 保存表 1075 mysql表怎么保存_数据库_12

 此时查看表创建时的详细结构:

mysql 保存表 1075 mysql表怎么保存_数据库_13

要与之前保持一致的话,也需要加上 comment '用户密码'


3、修改列名

将 user 表中的 name 列名修改为 xingming 这个列名:

mysql 保存表 1075 mysql表怎么保存_字段_14


4、修改表名 

将 user 表修改为 employee 这个表名:

mysql 保存表 1075 mysql表怎么保存_存储引擎_15


5、删除列 

将 employee 表中的 path 字段进行删除:

mysql 保存表 1075 mysql表怎么保存_字段_16

注意:删除列后,该列所对应存储的数据页将删除。


 五、删除表

mysql 保存表 1075 mysql表怎么保存_字段_17