属性付きリレーションシップ クラス テーブル (中間テーブル) の生成

多対多の基数や属性を持つリレーションシップ クラスが作成されると、中間リレーションシップ クラス テーブルが作成されます。このテーブルは、関連元オブジェクトと関連先オブジェクト間の関連付けのマッピングに使用されます。中間テーブルには、関連元および関連先のフィーチャクラスまたはテーブル (あるいはその両方) の主キー値に関連付けられている外部キー フィールドが含まれます。また、追加属性も含まれます。テーブル内の各行は、1 つの関連元オブジェクトを 1 つの関連先オブジェクトに関連付けます。

中間テーブルにはリレーションシップ自体の属性を格納できる

中間テーブルが作成される際には、フィールドだけが自動的に生成されます。ArcGIS では関連元オブジェクトと関連先オブジェクトの関連性が認識されないため、行を手動で設定する必要があります。これは、編集セッションで 2 つの対象オブジェクト クラスの関連するフィーチャまたは行を選択し、[属性] ダイアログ ボックス (アクセスするには [編集] タブの [属性] ボタン 属性 をクリックします) でリレーションシップを中間テーブルに追加することで実行できます。いったんリレーションシップを中間テーブルに追加すると、関連する主キー値が外部キー フィールドに自動的に設定されます。追加属性フィールドにデータが入力される場合もあります。このプロセスは、一連の関連フィーチャのすべてにおいて繰り返す必要があります。

注意:

中間リレーションシップ クラス テーブルはオブジェクト クラスではないため、結果としてドメイン、サブタイプおよびデフォルト値はこのテーブル タイプでは使用できません。

  1. [データ管理] ツールボックスにある [リレーションシップ クラスの作成 (Create Relationship Class)] ジオプロセシング ツールを使用して、リレーションシップ クラスを作成します。また、リレーションシップ クラスがすでに存在する場合は、[カタログ] ウィンドウでデータに接続します。
  2. 中間リレーションシップ クラス テーブルとともにリレーションシップに属するフィーチャクラスまたはテーブル (あるいはその両方) を追加します。
  3. リボンの [編集] タブをクリックして、データの編集を開始します。
  4. [選択] ツール 選択 (Select) を使用して、関連する関連元および関連先のオブジェクトを対話的に選択します。テーブルがリレーションシップに属する場合は、テーブルを開いて対象となる行を選択します。
  5. [編集] タブの [属性] ボタン 属性 をクリックして、[属性] ダイアログ ボックスを開きます。選択したフィーチャが [属性] ウィンドウに表示されます。
  6. [属性] ウィンドウで選択したフィーチャクラスのうちのいずれかを展開して、リレーションシップ クラス ラベルを右クリックします。
  7. [選択セットをリレーションシップに追加] オプションをクリックします。中間テーブルに行が追加され、関連する主キーの値が外部キー フィールドに設定されます。
  8. ステップ 4 〜 7 を繰り返して、対象となるオブジェクト間のリレーションシップをすべてリレーションシップ クラス テーブルに設定します。
  9. 更新されたリレーションシップを表示したり、属性フィールドのデータを入力または編集したりするには、リレーションシップ クラス テーブルを開きます。
  10. リレーションシップと新規データを中間リレーションシップ クラス テーブルに保存するために、編集内容を保存する必要があります。
ヒント:
この作業は、[データ管理] ツールボックスにある [リレーションシップ クラスの作成 (Create Relationship Class)] ジオプロセシング ツールを使用して実行することもできます。
ヒント:
[マップ] ウィンドウでは 2 つのテーブル間の中間リレーションシップ クラス テーブルを生成できないため、[テーブルからリレーションシップ クラスを作成 (Table To Relationship Class)] ツールが唯一使用できる手段となります。