主キーは、テーブル内の各レコードを一意に識別します。2つの行が同じ主キー値を持つことはありません。キーはNULLであってはならず、一意かつ安定している必要があります。顧客テーブルでは、主キーは顧客IDになる場合があります。注文テーブルでは、注文番号になる場合があります。主キーはレコードのアンカー(基準点)です。他のテーブルは外部キーを介して主キーを参照します。主キーがないと、レコードを確実に識別、更新、削除することが困難になります。
主キーには 2 つの形式があります。自然キーはデータ自体から生成されます。社会保障番号、電子メール アドレス、または製品の SKU などです。これらは意味を持ちますが、変更される可能性があります。人々は電子メール アドレスを変更します。企業は製品コードを変更します。サロゲート キーはシステムによって生成されます。自動インクリメント整数または UUID です。これらはデータベース外では意味を持ちません。これらは変更されません。安定性が意味よりも重要であるため、一般的にサロゲート キーが好まれます。変更された自然キーは、それを参照するすべてのテーブルで更新を強制します。サロゲート キーは永久に同じままです。一部のテーブルでは、2 つ以上の列で構成される複合主キーを使用します。注文明細項目は、注文 ID と明細番号の組み合わせによって識別される場合があります。複合キーは機能しますが、結合と外部キー参照を複雑にします。単一のサロゲート キーの方がシンプルです。
プライマリキープロパティ
- ユニーク - 重複なし
- nullではない — 必ず値を持つ
- 安定している ― 時間の経過とともに変化しない
- 単一または複合 – 1列または複数列
- インデックス付き - 自動的に高速検索が可能
主キーは識別子です。それは、このレコードがこのレコードであり、他のレコードではないことを示します。主キーがなければ、データは固定された情報を持たないことになります。
Comments
No comments yet. Be the first to share a thought.
Leave a comment