概要 Oracle Database の CREATE TABLE には AUTO INCREMENT な構文が無いので、自前でシーケンス等を使って連番管理する。 今更って話ではありますが主に自分用にメモ。 ケース1: MAX を使う 一番理解が楽。 ただしレコードが既にある場合でないと動かないので注意。(MAX(id) が NULL になるので…) あと、トランザクションで包まないとタイミングによっては ID が重複するかも。 さらに、レコード削除後の挿入で ID が再利用される可能性もあるので注意。 CREATE TABLE mytable( id NUMBER NOT NULL, col2 VARCHAR2(20) ); INSERT INTO mytable(id, col2) VALUES(0, ''); -- ダミーレコード INSERT INTO mytable(id, co