12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
ADADADADAD
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
在mysql中,可以使用“ALTER TABLE”语句和ADD关键字来增加列(字段),语法为“ALTER TABLE 表名 ADD 新字段名 数据类型[约束条件];”;这种语法格式会在数据表的末尾添加列(字段)。本
以下为本文的正文内容,请查阅,本站为公益性网站,复制本文以及下载DOC文档全部免费。
在mysql中,可以使用“ALTER TABLE”语句和ADD关键字来增加列(字段),语法为“ALTER TABLE 表名 ADD 新字段名 数据类型[约束条件];”;这种语法格式会在数据表的末尾添加列(字段)。
本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。
MySQL 数据表是由行和列构成的,通常把表的“列”称为字段(Field),把表的“行”称为记录(Record)。随着业务的变化,可能需要在已有的表中添加新的字段。
在mysql中,可以使用“ALTER TABLE”语句和ADD关键字来增加列(字段)。
语法:
ALTERTABLE表名ADD新字段名数据类型[约束条件];
对语法格式的说明如下:
表名
:为数据表的名字;
新字段名
:为所要添加的字段的名字;
数据类型
:为所要添加的字段能存储数据的数据类型;
[约束条件]
:是可选的,用来对添加的字段进行约束。
这种语法格式默认在表的最后位置(最后一列的后面)添加新字段。
示例:
我们有一个student 数据表,使用 DESC 查看 student 表结构
mysql>DESCstudent;+-------+-------------+------+-----+---------+-------+|Field|Type|Null|Key|Default|Extra|+-------+-------------+------+-----+---------+-------+|id|int(4)|YES||NULL|||name|varchar(20)|YES||NULL|||sex|char(1)|YES||NULL||+-------+-------------+------+-----+---------+-------+3rowsinset(0.01sec)
使用 ALTER TABLE 语句添加一个 INT 类型的字段 age,在看看 student 表结构
mysql>ALTERTABLEstudentADDageINT(4);QueryOK,0rowsaffected(0.16sec)Records:0Duplicates:0Warnings:0mysql>DESCstudent;+-------+-------------+------+-----+---------+-------+|Field|Type|Null|Key|Default|Extra|+-------+-------------+------+-----+---------+-------+|id|int(4)|YES||NULL|||name|varchar(20)|YES||NULL|||sex|char(1)|YES||NULL|||age|int(4)|YES||NULL||+-------+-------------+------+-----+---------+-------+4rowsinset(0.00sec)
可以看出student 表已经添加了 age 字段,且该字段在表的最后一个位置,添加字段成功。
那么如果想要在开头或者中间添加字段,需要怎么做?
如果希望在开头位置(第一列的前面)添加新字段,那么需要借助 FIRST
关键字
如果希望在中间位置添加新字段,那么需要借助 AFTER
关键字
语法格式如下:
ALTERTABLE表名ADD新字段名数据类型[约束条件]FIRST;ALTERTABLE表名ADD新字段名数据类型[约束条件]AFTER<已经存在的字段名>;
示例:
mysql>ALTERTABLEstudentADDstuIdINT(4)FIRST;QueryOK,0rowsaffected(0.14sec)Records:0Duplicates:0Warnings:0mysql>DESCstudent;+-------+-------------+------+-----+---------+-------+|Field|Type|Null|Key|Default|Extra|+-------+-------------+------+-----+---------+-------+|stuId|int(4)|YES||NULL|||id|int(4)|YES||NULL|||name|varchar(20)|YES||NULL|||sex|char(1)|YES||NULL|||age|int(4)|YES||NULL||+-------+-------------+------+-----+---------+-------+5rowsinset(0.00sec)
student 表中添加了一个 stuId 字段,且该字段在表中的第一个位置
mysql>ALTERTABLEstudentADDstunoINT(11)AFTERname;QueryOK,0rowsaffected(0.13sec)Records:0Duplicates:0Warnings:0mysql>DESCstudent;+-------+-------------+------+-----+---------+-------+|Field|Type|Null|Key|Default|Extra|+-------+-------------+------+-----+---------+-------+|stuId|int(4)|YES||NULL|||id|int(4)|YES||NULL|||name|varchar(20)|YES||NULL|||stuno|int(11)|YES||NULL|||sex|char(1)|YES||NULL|||age|int(4)|YES||NULL||+-------+-------------+------+-----+---------+-------+6rowsinset(0.00sec)
student 表中添加了一个 stuId 字段,且该字段在 name 字段后面的位置
11-19
11-19
11-19
11-19
11-19
11-19
11-19
11-19
11-19
11-19
11-19
11-19
11-19
11-19
11-19
11-19