oracleにおけるAuto Increment主キーの書き方は何ですか?
Oracleにおいて、オートインクリメント主キーはシーケンス(Sequence)を使用して実装されます。シーケンスは独立したオブジェクトであり、一意の逐次ナンバーを生成することができます。テーブルを作成する際には、主キーのフィールドにシーケンスを使用してデフォルト値を定義することができます。以下は例です。
- シーケンスの作成:
- seq_nameという名前のシーケンスを作成してください。最初の値は1から始まり、1ずつ増加し、最小値は1、最大値は9999999999、キャッシュサイズは20です。
- seq_nameはシーケンスの名前であり、START WITHはシーケンスの初期値を指定し、INCREMENT BYはシーケンスの増分を指定します。また、MINVALUEとMAXVALUEはシーケンスの最小値と最大値を指定し、CACHEはシーケンスのキャッシュ数を指定します。
- 表を作成する際に、シーケンスを主キーのフィールドに使用してデフォルト値を指定します。
- table_name という名前のテーブルを作成してください。
idは、NUMBER型で、デフォルト値はseq_name.NEXTVAL、そして主キーとして設定してください。 - これにより、新しいレコードがテーブルに挿入されるたびに、その次の一意の値が自動的にシーケンスから取得され、主キーの値として使用されます。