MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQL列を再配置する方法は?


MySQLの列を再配置するには、showcreateコマンドを使用して列の配置を確認します。構文は次のとおりです-

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)

これで、StudentIdの前にStudentName列を再配置できます。クエリは次のとおりです-

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)

  1. MySQLテーブルをバッチ更新する方法は?

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> BreakfastTime time    -> ); Query OK, 0 rows affected (0.59 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('7:30:45'); Query OK, 1 row affected (0.19 sec) my

  2. MySQLにテーブルが存在するかどうかを検出するにはどうすればよいですか?

    テーブルの存在を検出するには、INFORMATION_SCHEMA.TABLESの概念を使用します。構文は次のとおりです- select table_name from information_schema.tables where table_schema=database() and table_name=yourTableName; 上記の構文を理解するために、テーブルを作成しましょう- mysql> create table DemoTable2032    -> (    -> ClientId int,   &n