MySQL修改表(ALTER TABLE语句)

在 MySQL 中可以使用 ALTER TABLE 语句来改变原有表的结构,例如增加或删减列、更改原有字段类型、设置或删除默认值、重新命名列或表等。

基本语法

修改表指的是修改数据库中已经存在的数据表的结构。MySQL使用ALTER TABLE语句修改表结构。常用的修改表的操作有增加字段、删除字段、修改字段名或字段类型或字段位置或字段默认值、修改表名等。

常用的语法格式如下:

ALTER TALE <表名> [修改选项];

修改选项的语法格式如下:

{ ADD [COLUMN] <列名> <类型>
| CHANGE [COLUMN] <旧列名> <新列名> <新列类型>
| ALTER [COLUMN] <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
| MODIFY [COLUMN] <列名> <类型>
| DROP [COLUMN] <列名>
| RENAME TO <新表名> }

添加字段

语法格式如下:

ALTER TABLE <表名> ADD [COLUMN] <新字段名> <数据类型> [约束条件] [FIRST|AFTER 已存在的字段名];

【实例1】在教师表teacher中添加education字段,字段类型为varchar(10)。

ALTER TABLE teacher ADD education VARCHAR(10);

在这里插入图片描述
【实例2】在教师表teacher中添加beizhu字段在sex字段后面,字段类型为varchar(20)。

ALTER TABLE teacher ADD beizhu VARCHAR(20) AFTER sex;

在这里插入图片描述

删除字段

语法格式如下:

ALTER TABLE <表名> DROP [COLUMN] <字段名>;

【实例3】将教师表teacher中beizhu字段删除。

ALTER TABLE teacher DROP beizhu;

在这里插入图片描述

修改字段名

语法格式如下:

ALTER TABLE <表名> CHANGE [COLUMN] <旧字段名> <新字段名> <新数据类型>;

【实例4】将学生表student的telephone字段名字改为phone,同时字段类型改为varchar(20)。

ALTER TABLE student CHANGE telephone phone VARCHAR(20);

在这里插入图片描述

修改字段类型

语法格式如下:

ALTER TABLE <表名> MODIFY [COLUMN] <列名> <类型> [约束条件] [FIRST|AFTER 列名];

ALTER TABLE <表名> CHANGE [COLUMN] <列名> <列名> <类型> [约束条件] [FIRST|AFTER 列名];

【实例5】将学生表student的address字段的字段长度改为100。

ALTER TABLE student MODIFY address VARCHAR(100);

ALTER TABLE student CHANGE address address VARCHAR(100);

在这里插入图片描述

修改字段位置

语法格式如下:

ALTER TABLE <表名> MODIFY [COLUMN] <列名> <类型> {FIRST|AFTER 列名};

ALTER TABLE <表名> CHANGE [COLUMN] <列名> <列名> <类型> {FIRST|AFTER 列名};

【实例6】将教师表teacher中education字段修改为表的第一个字段。

ALTER TABLE teacher MODIFY education VARCHAR(10) FIRST;

ALTER TABLE teacher CHANGE education education VARCHAR(10) FIRST;

在这里插入图片描述
【实例7】将教师表teacher中education字段修改为profession字段后字段。

ALTER TABLE teacher MODIFY education VARCHAR(10) AFTER profession;

ALTER TABLE teacher CHANGE education education VARCHAR(10) AFTER profession;

在这里插入图片描述

修改字段默认值

语法格式如下:

ALTER TABLE <表名> ALTER [COLUMN] <列名> { SET DEFAULT <默认值> | DROP DEFAULT };

【实例8】为教师表teacher中sex字段设置默认值,默认值为男。

ALTER TABLE teacher ALTER sex SET DEFAULT '男';

在这里插入图片描述

修改表名

语法格式如下:

ALTER TABLE <旧表名> RENAME [TO] <新表名>;

【实例9】修改教师表teacher的表名为teachers。

ALTER TABLE teacher RENAME teachers;

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_63669373/article/details/127170146