mysql怎么增加列(字段)

2023-10-18 1697阅读

在mysql中,可以使用“ALTER TABLE”语句和ADD关键字来增加列(字段),语法为“ALTER TABLE 表名 ADD 新字段名 数据类型[约束条件];”;这种语法格式会在数据表的末尾添加列(字段)。本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。MySQL 数据表是由行和列构成的,通常把表的“列”称为字段,把表的“行”称为记录。随着业务的变化,可能需要在已有的表中添加新的字段。mysql> DESC student; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | id | int | YES | | NULL | | | name | varchar | YES | | NULL | | | sex | char | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 3 rows in set . mysql> ALTER TABLE student ADD stuno INT AFTER name; Query OK, 0 rows affected Records: 0 Duplicates: 0 Warnings: 0 mysql> DESC student; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | stuId | int(4


mysql怎么增加列(字段)
(图片来源网络,侵删)

在mysql中,可以使用“ALTER TABLE”语句和ADD关键字来增加列(字段),语法为“ALTER TABLE 表名 ADD 新字段名 数据类型[约束条件];”;这种语法格式会在数据表的末尾添加列(字段)。

本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

MySQL 数据表是由行和列构成的,通常把表的“列”称为字段(Field),把表的“行”称为记录(Record)。随着业务的变化,可能需要在已有的表中添加新的字段。


在mysql中,可以使用“ALTER TABLE”语句和ADD关键字来增加列(字段)。

语法:

ALTER TABLE 表名 ADD 新字段名 数据类型[约束条件];

对语法格式的说明如下:


表名

:为数据表的名字;


新字段名

:为所要添加的字段的名字;


数据类型

:为所要添加的字段能存储数据的数据类型;


[约束条件]

:是可选的,用来对添加的字段进行约束。

这种语法格式默认在表的最后位置(最后一列的后面)添加新字段。

示例:

我们有一个student 数据表,使用 DESC 查看 student 表结构

mysql> DESC student; +-------+-------------+------+-----+---------+-------+ | Field | Type        | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | id    | int(4)      | YES  |     | NULL    |       | | name  | varchar(20) | YES  |     | NULL    |       | | sex   | char(1)     | YES  |     | NULL    |       | +-------+-------------+------+-----+---------+-------+ 3 rows in set (0.01 sec)

使用 ALTER TABLE 语句添加一个 INT 类型的字段 age,在看看 student 表结构

mysql> ALTER TABLE student ADD age INT(4); Query OK, 0 rows affected (0.16 sec) Records: 0  Duplicates: 0  Warnings: 0  mysql> DESC student; +-------+-------------+------+-----+---------+-------+ | 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    |       | +-------+-------------+------+-----+---------+-------+ 4 rows in set (0.00 sec)

可以看出student 表已经添加了 age 字段,且该字段在表的最后一个位置,添加字段成功。


那么如果想要在开头或者中间添加字段,需要怎么做?

如果希望在开头位置(第一列的前面)添加新字段,那么需要借助

FIRST

关键字

如果希望在中间位置添加新字段,那么需要借助

AFTER

关键字

语法格式如下:

ALTER TABLE 表名 ADD 新字段名 数据类型 [约束条件] FIRST;  ALTER TABLE 表名 ADD 新字段名 数据类型 [约束条件] AFTER ;

示例:

mysql> ALTER TABLE student ADD stuId INT(4) FIRST; Query OK, 0 rows affected (0.14 sec) Records: 0  Duplicates: 0  Warnings: 0  mysql> DESC student; +-------+-------------+------+-----+---------+-------+ | 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    |       | +-------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec)

student 表中添加了一个 stuId 字段,且该字段在表中的第一个位置

mysql> ALTER TABLE student ADD stuno INT(11) AFTER name; Query OK, 0 rows affected (0.13 sec) Records: 0  Duplicates: 0  Warnings: 0   mysql> DESC student; +-------+-------------+------+-----+---------+-------+ | 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    |       | +-------+-------------+------+-----+---------+-------+ 6 rows in set (0.00 sec)

student 表中添加了一个 stuId 字段,且该字段在 name 字段后面的位置

本文来源网站:info110.com,若侵权,请联系删除。

《mysql怎么增加列(字段)》来自互联网同行内容,若有侵权,请联系我们删除!

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]