Oracle 12c以降のバージョンでは、次の3つの方法で実行できます。
- シーケンスの次の値を特定の値に手動でリセットします:
- シーケンスの次の値を最大ID値に自動的にリセットします:
上記の両方の場合で、ID列に値を含むデータを挿入できます
insert into [TableName] (ID, Name) VALUES (1, 'Name1');
insert into [TableName] (ID, Name) VALUES (2, 'Name2');
- シーケンスの次の値を最大IDに自動的にリセットします:
ただし、この場合、ID列の値での挿入が制限されます
insert into [TableName] (Name) VALUES ('Name1');
insert into [TableName] (Name) VALUES ('Name2');
ID列に値を渡すと、エラーが発生します