如何重新排列 MySQL 列?
要重新排列 MySQL 列,請透過 show create 命令檢查列排列。語法如下:
show create table yourTableName;
重新排列 MySQL 列的語法如下:
alter table yourTableName change column yourColumnName yourColumnName dataType first
為此,可以使用 after 關鍵字。語法如下:
alter table yourTableName change column yourColumnName yourColumnName dataType after yourSpecificColumnName;
首先,我們檢查已建立表“AddColumn”的列排列:
mysql> show create table AddColumn;
輸出如下:
+-----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table | +-----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | AddColumn | CREATE TABLE `addcolumn` (`StudentId` varchar(50) DEFAULT NULL, `StudentName` varchar(300) DEFAULT NULL ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci| +-----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)
現在可以將 StudentName 列重新排列在 StudentId 之前。查詢如下:
mysql> alter table AddColumn change StudentName StudentName varchar(300) first; Query OK, 0 rows affected (1.28 sec) Records: 0 Duplicates: 0 Warnings: 0
以下是用於檢查 StudentName 是否為第一列的查詢:
mysql> desc AddColumn;
輸出如下,顯示列已成功重新排列:
+-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | StudentName | varchar(300) | YES | | NULL | | | StudentId | varchar(50) | YES | | NULL | | +-------------+--------------+------+-----+---------+-------+ 2 rows in set (0.00 sec)
廣告