主キー


ホーム サイトマップ
トップページデータベース用語のはなし >主キー

◆主キーとは?

主キーとは,格納されたレコードを一意に識別するフィールドまたはフィールドセットのことをいいます.
Accessで新しくテーブルを作成しようとすると,主キーの設定を促すメッセージが表示されます.



なぜこのようなメッセージが表示されるのかというと,Accessはデータベースソフトであるため,主キーに格納されている値をもとにデータを検索したり,主キーを使用して他のテーブルと結合するためです.

◆主キーの条件

主キーは,格納されたレコードを一意に識別するフィールドまたはフィールドセットである必要があります.
そのため,ただ思いつきでどこに設定しても構わないというものではなく,主キーを設定するフィールドは,以下の条件を満たす必要があります.
  1. 値が重複しない  
  2. NULL値でない

◆単一フィールドの主キー

以下の表をご覧ください.

商品テーブルを見ると,商品コードは値の重複がなく,またNULL値もないため,主キーを設定することができます.
品名や種類は,値が重複しているため,このフィールドのみを主キーにすることはできません.
商品テーブル
商品コード品名種類
1101ムースポッキーいちご
1102ムースポッキーホワイト
1103フランホワイト

この状態をAccessでは,単一フィールドの主キーといいます.

◆複数フィールドの主キー

次に出荷テーブルを見てみましょう.

今度は,商品コード,顧客コードともに値が重複しています.
前途のとおり,値が重複しているフィールドを主キーに設定することはできないので,複数のフィールドを組み合わせて主キーを設定します.
出荷テーブル
商品コード顧客コード数量
110130050
110230050
1102301100

商品コードと顧客コードのふたつを主キーにすると,ひとつの商品コードに対して,同じ顧客コードが存在することはありません.
また,ひとつの顧客コードに対して,同じ商品コードが存在することもありません.
したがって,主キーとして設定することができます.

この状態をAccessでは,複数フィールドの主キーといいます.

作成日:2003/12/8
Copyright (C)2003 Orakumiko All rights reserved.