データベースのオートナンバー
エンティティをモデリングしてデータベースにデータを保存する際、Integer型のアトリビュートをオートナンバーにし、必ず各レコードが一意の値を持つようにできます。
このページでは、アトリビュートのIsAutoNumberプロパティを[Yes
]に設定したときのデータベースの動作について説明しています。
SQL Server
SQL Serverデータベースでシーケンシャルアトリビュートを作成すると、Intデータ型でIdentity(1,1)を設定した列が作成されます。これで値は1から始まり、新しいレコードが挿入されると1ずつ増えるようになります。
CREATE TABLE Product ( Id INT IDENTITY(1,1), Name VARCHAR(50) );
Oracle
Oracleでは、シーケンシャルアトリビュートは以下のOracleオブジェクトにマッピングされます。
- 「
OSSEQ
」というプレフィックスが付けられたシーケンスは、対応する列の一意性を保証するために作成されます。このシーケンスは1から始まり、1ずつ増えます。 - 「
OSTRG
」というプレフィックスが付けられたトリガーは、シーケンスの次の値を計算するために作成されます。このトリガーは、新しいレコードを挿入する前に呼び出されます。