AUTO_INCREMENT 制約があるカラムに連番 ID で INSERT する方法

dev

SQL を実行してレコードを追加したいとき、連番になっている ID を手動で設定するのは面倒ですよね。これを自動的にやるには、AUTO_INCREMENT 制約があるカラムの値を 0 または NULL に設定します。

INSERT INTO user VALUSE (0, 'john', 'smith');

こうすることで個別に ID を指定することなく自動で設定できるようになります。

mysql> select * from user;
+----+------------+-----------+
| ID | first_name | last_name |
+----+------------+-----------+
|  1 | taro       | yamada    |
|  2 | john       | smith     |
+----+------------+-----------+

ちなみに、ここまでの ID に抜け番がある場合は、もっとも大きい ID のあとに続くように追加されます。

mysql> select * from user;
+----+------------+-----------+
| ID | first_name | last_name |
+----+------------+-----------+
|  1 | taro       | yamada    |
| 10 | jack       | sparrow   |
| 11 | john       | smith     |
+----+------------+-----------+
タイトルとURLをコピーしました