如何在現有的 MySQL 表中向特定位置新增列?


要在現有表中的特定位置新增列,請使用 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)
-> );
Query OK, 0 rows affected (0.53 sec)

現在,你可以使用 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;
Query OK, 0 rows affected (1.34 sec)
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)

更新於:2020 年 6 月 25 日

8K+ 次瀏覽

啟動您的 職業生涯

完成課程以獲得認證

開始
廣告
© . All rights reserved.