Oracle オートインクリメント設定方法【連番を自動生成】
オラクルでは、シーケンスとトリガーを使用して、自動インクリメント列の機能をシミュレートすることができます。
- シーケンスを作成する。
CREATE SEQUENCE table_name_seq
START WITH 1
INCREMENT BY 1
- トリガーを作成する:
CREATE OR REPLACE TRIGGER table_name_trigger
BEFORE INSERT ON table_name
FOR EACH ROW
BEGIN
SELECT table_name_seq.NEXTVAL
INTO :new.id
FROM dual;
END;
上記の例では、table_name は自動増分列を追加したいテーブル名であり、id は自動増分列の列名です。シーケンスとトリガーを作成することで、新しいレコードを挿入するたびに、トリガーが自動増分列にユニークな値を自動的に割り当てます。