是否不可能在 MySQL 中特别在另一列之前添加一列?
不,你可以使用 ALTER 很方便地在另一列之前添加一列。
注意 − 若要将列添加到表行内的特定位置,请使用 FIRST 或 AFTER col_name 让我们先创建一个表 −
mysql> create table DemoTable -> ( -> Id int, -> Name varchar(20), -> CountryName varchar(100) -> ); Query OK, 0 rows affected (0.67 sec)
让我们查看表中的所有列名 −
mysql> show columns from DemoTable;
输出
这将产生以下输出 −
+-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | Id | int(11) | YES | | NULL | | | Name | varchar(20) | YES | | NULL | | | CountryName | varchar(100) | YES | | NULL | | +-------------+--------------+------+-----+---------+-------+ 3 rows in set (0.00 sec)
以下是 MySQL 中在另一列之前添加一列的查询。
mysql> alter table DemoTable add Age int AFTER Name; Query OK, 0 rows affected (1.50 sec) Records: 0 Duplicates: 0 Warnings: 0
让我们再次查看上述表中的所有列名 −
mysql> show columns from DemoTable;
输出
这将产生以下输出。我们已成功添加了一个列名 −
+-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | Id | int(11) | YES | | NULL | | | Name | varchar(20) | YES | | NULL | | | Age | int(11) | YES | | NULL | | | CountryName | varchar(100) | YES | | NULL | | +-------------+--------------+------+-----+---------+-------+ 4 rows in set (0.00 sec)
广告