属性付きリレーションシップ クラス テーブル(中間テーブル)の生成
リレーションシップ クラスは、ArcInfo および ArcEditor では作成および編集が可能ですが、ArcView では読み取り専用です。リレーションシップ クラスに属しているフィーチャクラスも ArcView では読み取り専用です。
多対多の基数や属性を持つリレーションシップ クラスが作成されると、中間リレーションシップ クラス テーブルが作成されます。このテーブルは、関連元オブジェクトと関連先オブジェクト間の関連付けのマッピングに使用されます。中間テーブルには、関連元および関連先のフィーチャクラスまたはテーブル(あるいはその両方)の主キー値に関連付けられている外部キー フィールドが含まれます。また、追加属性も含まれます。テーブル内の各行は、1 つの関連元オブジェクトを 1 つの関連先オブジェクトに関連付けます。
中間テーブルが作成される際には、フィールドだけが自動的に生成されます。ArcGIS では関連元オブジェクトと関連先オブジェクトの関連性が認識されないため、行を手動で設定する必要があります。これは、ArcMap の編集セッションで 2 つの対象オブジェクト クラスの関連するフィーチャまたは行を選択し、[エディタ] ツールバーの [属性] ダイアログ ボックスでリレーションシップを中間テーブルに追加することで実行できます。いったんリレーションシップを中間テーブルに追加すると、関連する主キー値が外部キー フィールドに自動的に設定されます。追加属性フィールドにデータが入力される場合もあります。このプロセスは、一連の関連フィーチャのすべてにおいて繰り返す必要があります。
中間リレーションシップ クラス テーブルはオブジェクト クラスではないため、結果としてドメイン、サブタイプおよびデフォルト値はこのテーブル タイプでは使用できません。
- [リレーションシップ クラス] ウィザード、または [データ管理 ツール] の [リレーションシップ クラスの作成(Create Relationship Class)] ツールを使用して、ArcCatalog またはカタログ ウィンドウでリレーションシップ クラスを作成します。
- ArcMap を開いて、中間リレーションシップ クラス テーブルとともにリレーションシップに属するフィーチャクラスまたはテーブル(あるいはその両方)を追加します。
- [エディタ] → [編集の開始] をクリックして編集セッションを開始します。
- [編集] ツールを使用して、関連する関連元および関連先のオブジェクトを対話的に選択します。テーブルがリレーションシップに属する場合は、テーブルを開いて対象となる行を選択します。
- [エディタ] ツールバーの [属性] ボタンをクリックして、[属性] ダイアログ ボックスを開きます。[属性] ダイアログ ボックスの左側のパネルに、選択したフィーチャが表示されます。
- 左側のパネルで選択したフィーチャクラスを展開して、リレーションシップ クラス ラベルを右クリックします。
- [選択オブジェクト追加] オプションをクリックします。中間テーブルに行が追加され、関連する主キーの値が外部キー フィールドに設定されます。
- ステップ 4 ~ 7 を繰り返して、対象となるオブジェクト間のリレーションシップをすべてリレーションシップ クラス テーブルに設定します。
- 更新されたリレーションシップを表示したり、属性フィールドのデータを入力または編集したりするには、リレーションシップ クラス テーブルを開きます。
- リレーションシップと新規データを中間リレーションシップ クラス テーブルに保存するために、編集内容を保存する必要があります。