要在现有表中的特定位置添加列,请使用after命令。语法如下-ALTER TABLE yourTableName
ADD COLUMN yourColumnName data type AFTER yourExistingColumnName;
为了理解上述语法,让我们首先创建一个表。创建表的查询如下。mysql> create table changeColumnPosition
-> (
-> Id_Position1 int,
-> Name_Position2 varchar(100),
-> Address_Position4 varchar(200)
-> );
现在,您可以使用desc命令检查现有表的描述。语法如下-desc yourTableName;
以下是查询以检查描述。mysql> desc changeColumnPosition;
以下是输出。+-------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+--------------+------+-----+---------+-------+
| Id_Position1 | int(11) | YES | | NULL | |
| Name_Position2 | varchar(100) | YES | | NULL | |
| Address_Position4 | varchar(200) | YES | | NULL | |
+-------------------+--------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
我有三列,我想在Name_Position2 Field之后添加另一列。查询如下。mysql> alter table changeColumnPosition
-> add Age_Position3 int after Name_Position2;
Records: 0 Duplicates: 0 Warnings: 0
我们在Name_Position2之后成功添加了Age_Position3列。现在,请再次检查现有表以了解我们所做的更改。mysql> desc changeColumnPosition;
以下是输出。+-------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+--------------+------+-----+---------+-------+
| Id_Position1 | int(11) | YES | | NULL | |
| Name_Position2 | varchar(100) | YES | | NULL | |
| Age_Position3 | int(11) | YES | | NULL | |
| Address_Position4 | varchar(200) | YES | | NULL | |
+-------------------+--------------+------+-----+---------+-------+
4 rows in set (0.01 sec)