トップページ
>データベース用語のはなし
>主キー
◆主キーとは?
主キーとは,格納されたレコードを一意に識別するフィールドまたはフィールドセットのことをいいます.
Accessで新しくテーブルを作成しようとすると,主キーの設定を促すメッセージが表示されます.
なぜこのようなメッセージが表示されるのかというと,Accessはデータベースソフトであるため,主キーに格納されている値をもとにデータを検索したり,主キーを使用して他のテーブルと結合するためです.
◆主キーの条件
主キーは,格納されたレコードを一意に識別するフィールドまたはフィールドセットである必要があります.
そのため,ただ思いつきでどこに設定しても構わないというものではなく,主キーを設定するフィールドは,以下の条件を満たす必要があります.
- 値が重複しない
- NULL値でない
◆単一フィールドの主キー
以下の表をご覧ください.
商品テーブルを見ると,商品コードは値の重複がなく,またNULL値もないため,主キーを設定することができます.
品名や種類は,値が重複しているため,このフィールドのみを主キーにすることはできません.
商品テーブル
| 商品コード | 品名 | 種類 |
| 1101 | ムースポッキー | いちご |
| 1102 | ムースポッキー | ホワイト |
| 1103 | フラン | ホワイト |
この状態をAccessでは,単一フィールドの主キーといいます.
◆複数フィールドの主キー
次に出荷テーブルを見てみましょう.
今度は,商品コード,顧客コードともに値が重複しています.
前途のとおり,値が重複しているフィールドを主キーに設定することはできないので,複数のフィールドを組み合わせて主キーを設定します.
出荷テーブル
| 商品コード | 顧客コード | 数量 |
| 1101 | 300 | 50 |
| 1102 | 300 | 50 |
| 1102 | 301 | 100 |
商品コードと顧客コードのふたつを主キーにすると,ひとつの商品コードに対して,同じ顧客コードが存在することはありません.
また,ひとつの顧客コードに対して,同じ商品コードが存在することもありません.
したがって,主キーとして設定することができます.
この状態をAccessでは,複数フィールドの主キーといいます.
作成日:2003/12/8
Copyright (C)2003 Orakumiko All rights reserved.