ビデオ: 一対一リレーションシップを作成する

適用先
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

演習

一対一リレーションシップとは

一対一リレーションシップは、ビジネスの営業に必要なデータを取得できるように、重要な関係を示すために頻繁に使用されます。

一対一リレーションシップとは、2 つのテーブルの情報をつなぐリンクであって、それぞれのテーブルにおいて各レコードが 1 回だけ出現するリンクのことです。 たとえば、従業員と従業員が運転する社用車の間の関係は一対一リレーションシップと言えます。 各従業員は Employees テーブルに 1 回だけ出現し、各社用車は Company Cars テーブルに 1 回だけ出現します。

一対一リレーションシップは、項目の一覧を含むテーブルがあり、項目に関して取得したい特定の情報が項目の種類によって異なるような場合に使用します。 たとえば、一部のユーザーが従業員で、他のユーザーが協力会社である連絡先テーブルを使用している場合があります。 従業員については、従業員番号と内線番号、その他の重要な情報がわかるようにする必要があります。 協力会社については、会社名、電話番号、料金を知る必要があります。 この場合は、Contacts、Employees、Subcontractors という 3 つの独立したテーブルを作成し、Contacts テーブルと Employees テーブルの間、および Contacts テーブルと Subcontractors テーブルの間に一対一リレーションシップを作成します。

一対一リレーションシップを作成するための概要

一対一リレーションシップを作成するには、1 つのテーブルのインデックス (通常は主キー) と、同じ値を共有する別のテーブルのインデックスをリンクします。 次に例を示します。

ID を共有する 2 つのテーブルを示す画面スニペット 多くの場合、このリレーションシップを作成する最善の方法は、セカンダリ テーブルで最初のテーブルの値を検索することです。 たとえば、Employees テーブルの Car ID フィールドをルックアップ フィールドとし、Company Cars テーブルの Car ID インデックスの値を検索します。 このようにすると、実際に存在しない車の ID を誤って追加することがありません。

重要

一対一リレーションシップを作成するときは、リレーションシップに参照データ整合性を適用するかどうかを慎重に決定してください

参照データの整合性は、関連レコードを削除することで、Access がデータクリーンを維持するのに役立ちます。 たとえば、[従業員] テーブルから従業員を削除する場合は、その従業員の特典レコードも [特典] テーブルから削除します。 ただし、この例のような一部のリレーションシップでは、参照整合性は意味がありません。従業員を削除した場合、車両は会社の車のテーブルから削除されたくありません。これは、車がまだ会社に属し、他のユーザーに割り当てられるためです。

一対一リレーションシップを作成するための手順

ルックアップ フィールドをテーブルに追加して、1 対 1 のリレーションシップを作成します。 (方法については、「テーブルの 構築とデータ型の設定」を参照してください)。たとえば、特定の従業員に割り当てられている車を示すために、[従業員] テーブルに車 ID を追加します。 次に、2 つのフィールド間のリレーションシップを作成するには、ルックアップ ウィザードを使用します。

  1. テーブルを開きます。

  2. [デザイン ビュー] で新しいフィールドを追加し、[データ型] の値を選択した後、[ルックアップ ウィザード] を選択します。

  3. ウィザードは既定で別のテーブルの値を検索するように設定されているので、[次へ] を選択します。

  4. このテーブルに挿入したいキー (通常は主キー) が含まれているテーブルを選択し、[次へ] を選択します。 この例では、Company Cars テーブルを選択します。

  5. [選択されたフィールド] ボックスの一覧で、使用するキーが含まれているフィールドを追加します。 [次へ] を選択します。

    ルックアップ ウィザード画面のスニペット

  6. 並べ替え順序を設定し、希望する場合は、フィールドの幅を変更します。

  7. 最後の画面では、[データ整合性を有効にする] チェック ボックスをオフにし、[完了] を選択します。

さらに詳しく

テーブルのリレーションシップの概要

リレーションシップを作成、編集、または削除する