単一条件リレーションシップについて
単一条件リレーションシップでは、あるフィールドのデータが別のフィールドのデータと照合されます。
たとえば、テキストフィールド A とテキストフィールド B の値が同じである場合、一方のテーブルの特定のレコードが、もう一方のテーブルの任意のレコードに関連します。
単一条件リレーションシップの使用
単一条件リレーションシップは、シリアル番号や ID 番号などの共通する 1 つの値に基づいて 2 つのテーブルを関連させる場合に使用します。たとえば、データベースに次の 2 つのテーブルがあります。
•名前と住所を保存する「顧客」テーブル
•電話番号、電話番号の種類 (勤務先、自宅、FAX 等) および電子メールアドレスを保存する「連絡先」テーブル
単一の顧客には複数の電話番号と電子メールを設定できるため、2 つのテーブル間でデータが分割されます。
これらのテーブルには次のようなフィールドがあります。
テーブル | フィールド名 | コメント |
顧客 | 顧客 ID | 数字フィールド、 シリアル番号の自動入力化。これは、顧客テーブルの照合フィールドになります。 |
| 名 | テキストフィールド |
| 姓 | テキストフィールド |
| 住所 1 | テキストフィールド |
| 市区町村 | テキストフィールド |
| 都道府県名 | テキストフィールド |
| 国 | テキストフィールド |
連絡先 | 電話番号 | テキストフィールド |
| 電話種類 | テキストフィールド |
| メールアドレス | テキストフィールド |
| 電子メールの種類 | テキストフィールド |
| 顧客 ID | 数字フィールド。これは、連絡先テーブルの照合フィールドになります。 |
「顧客 ID」フィールドはこれらの 2 つのテーブル間のリレーションシップの照合フィールドです。「顧客」テーブルでは、「顧客 ID」フィールドにシリアル番号の自動入力が設定されており、「顧客」テーブルの各レコードには固有な ID 番号が付けられます。「連絡先」テーブルでは、「顧客ID」は単純な数字フィールドで、自動入力オプションは設定されていません。
リレーションシップグラフで各テーブルの「顧客 ID」フィールドの間にリレーションシップを作成します。
[リレーションシップ編集] ダイアログボックスで、[
このリレーションシップを使用してこのテーブルでのレコードの作成を許可] オプションを有効にします。つまり、ユーザは空白の
ポータル行に電話番号を入力することができ、入力するとその電話番号に対して自動的に関連レコードが作成されます。また、一致する連絡先レコードが削除された場合に古い電話番号を保持しておく理由はないため、[
他のテーブルでレコードが削除された時、このテーブルの関連レコードを削除] オプションも有効にします。
このリレーションシップは、「連絡先」テーブルに関連レコードを作成することができるように定義されているため、新しい関連レコードを作成すると「顧客」テーブルのレコードの「顧客 ID」の数字が自動的に「連絡先」テーブルの「顧客 ID」フィールドに挿入されます。これにより、「連絡先」テーブルの複数のレコードを「顧客」テーブルの単一のレコードに関連させることができます。
最後に、「顧客」レイアウトで「連絡先」テーブルにポータルが追加されます。「顧客」テーブルの空のポータル行に電話番号または電子メールアドレスを入力すると、「連絡先」テーブルに電話番号または電子メールアドレスの関連レコードが作成されます。
関連項目