MySQL

[MySQL] テーブルに自動採番列を設定する(auto_increment)

2015年9月21日

MySQLのテーブルに自動採番列を作成するサンプルです。

サンプルソース

例)自動採番列(id列)を持つ testテーブルを作成する


CREATE TABLE test (
  id int auto_increment
 ,val varchar(10)
 ,primary key(id)
);

以下のINSERT文を実行すると、ID列には自動採番された値がセットされます。

例)INSERT


INSERT INTO test (val) VALUES ('AAA');
INSERT INTO test (val) VALUES ('BBB');
INSERT INTO test (val) VALUES ('CCC');
(testテーブル)
id val
1 1 AAA
2 2 BBB
3 3 CCC

備考

  • auto_incrementは1テーブルに1つしか定義できません。
  • ORACLEのシーケンスなどとは異なり、独立したオブジェクトではなくテーブルに紐づくものです。
  • auto_incrementの値を取得したい場合は以下のSQLで確認できます。
    
    select auto_increment 
    from information_schema.tables
    where table_name = 'test';
    
  • auto_incrementの値を変更したい場合は以下のSQLで変更できます。
    
    alter table autoincrement_test auto_increment=10;
    

-MySQL
-