MySQL のカラム追加時に追加場所を指定する
MySQL
Published: 2018-04-08

動作確認バージョン

$ mysql --version
mysql  Ver 14.14 Distrib 5.6.25, for Linux (x86_64) using  EditLine wrapper

目的

MySQL 5.6 のカラム追加時に追加場所を指定します

設定する

仮に下記のテーブルがあるとします。

CREATE TABLE `test_table` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `col1` varchar(50) DEFAULT NULL,
  `col3` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1

カラム追加

mysql> ALTER TABLE test_table ADD col2 varchar(50) DEFAULT NULL AFTER col1;
Query OK, 0 rows affected (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 0

確認する

mysql> show create table test_table\G
*************************** 1. row ***************************
       Table: test_table
Create Table: CREATE TABLE `test_table` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `col1` varchar(50) DEFAULT NULL,
  `col2` varchar(50) DEFAULT NULL,
  `col3` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.00 sec)

意図したところにカラムが追加されました。

参考URL