#430 複合キーの作り方 テーブル

テーブル構造の設計においては、複数のフィールドをまとめて主キーとしたい場合があります。たとえば、商品マスタのようなテーブルにおいて、「商品コード」と「商品区分」が1セットのキーとなっているような場合です。「商品区分は別でも同じ商品コードの場合があり得る」、「ある1つの商品区分内には同じ商品コードはあってはいけない」、つまり「商品コードと商品区分の両方の組み合わせは他のレコードと重複しない一意な値にしたい」という場合です。

このような場合、テーブルのデザインにおいて「複合キー」を設定することで、誤ったキー値の入力を制約することができます。


それには次のような手順でテーブルデザインを行います。
  1. まず、テーブルのデザインビューにおいて、複合キーにしたい複数のフィールドを範囲選択します。
    フィールドを範囲選択

  2. その状態で、[編集]-[主キー]メニューを選択するか、ツールバーの[主キー]ボタンをクリックします。

  3. 複合キーが設定されたかどうかは、デザインビューのセレクタ部分の鍵マークで確認できます。
    セレクタ部分の鍵マーク

なお、現在すでに商品コードだけが主キーに設定されているような場合には、インデックスの画面([表示]-[インデックス]メニューなどから表示できます)において、「商品コード」の下の行の「フィールド名」の欄だけに「商品区分」を追加することで、自動的に複合キーとして設定されます。このとき、同じキーですので、「インデックス名」の欄は空欄のままにしておくことがポイントです。インデックス名を指定すると単独のインデックスとなってしまいます。
追加前

追加後
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved