MySQL 基础教程

MySQL 高级教程

MySQL SQL 语句

MySQL 笔记

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/mysql-alter-table-add-column.html

mysql 增加字段 sql 语句,包含多个字段的批量增加

MySQL DDL(数据定义语言) 详解 MySQL DDL(数据定义语言) 详解


mysql 增加字段 sql 用 alter table add 语句,它属于 DDL 范畴,它也可以指定新增字段的位置。

新增字段语句

MySQL 针对指定表增加字段的语法如下:

ALTER TABLE tbl_name
    ADD col_name column_definition
    [FIRST | AFTER col_name]

增加列采用关键字 add,其后增加对应列名及列定义,此外 MySQL 提供了 FIRST 和 AFTER 两个子选项来指定新增字段的位置,FIRST 表示放置在第一列,AFTER 表示设定在某个字段之后。

假设有用户表 user,其有两个字段 id 和 user_name,新增 user_email 字段示例如下:

ALTER TABLE user
	ADD user_email VARCHAR(64) NOT NULL DEFAULT '' COMMENT '用户 email 地址'

未指定位置,默认在最后字段后追加。

ALTER TABLE user
	ADD user_email VARCHAR(64) NOT NULL DEFAULT '' COMMENT '用户 email 地址'
	FIRST

如上追加 FIRST 选项后,user_email 字段会放在 id 字段之前,即第一列。

ALTER TABLE user
	ADD user_email VARCHAR(64) NOT NULL DEFAULT '' COMMENT '用户 email 地址'
	AFTER id

显然,将新增非主键的新增字段放在第一的位置可读性较差,如上可以指定放在某个列之后。

若一次性增加多个字段,可以多个 ADD 子句,具体示例如下:

ALTER TABLE user
	ADD user_email VARCHAR(64) NOT NULL DEFAULT '' COMMENT '用户 email 地址',
    ADD phone_number VARCHAR(16) NOT NULL DEFAULT '' COMMENT '手机号码';