ストラクチャーエディターあるいは4DのSQLコマンドを使用して、リレーションを作成・削除できます。この節ではデザインモードで手作業でリレーションを作成する方法を説明します。4DでSQL文を使用する点についての詳細は、4D SQLリファレンスマニュアルを参照してください。
2テーブル間のリレーションを手作業で作成する場合、2つのフィールド間で線を引くか、ツールバーのオブジェクト追加メニューを使用します。
ストラクチャーエディターでリレーションを作成するには:
- ストラクチャーエディターウィンドウで、リレーションの外部キーとなるフィールドにカーソルを重ねます。
- マウスボタンを押したまま、リレート先のテーブルにマウスをドラッグします。
ポインターの移動に追随して、4Dは以下のようにフィールドを選択し、リレーションを描画します。

- 1テーブルの主キーフィールドまでドラッグして、マウスボタンを離します。
オブジェクト追加メニューを使用してリレーションを作成するには:
- それぞれ異なる2つのテーブルに属する同じタイプのフィールドを2つ選択します。
選択の順番により、リレーションの方向が決定されます。最初に選択されたフィールドが外部キー (Nフィールド) で、2番目に選択されたフィールドが主キー (1フィールド) です。1フィールド側を選択する際はCommand (Mac OS) またはCtrl (Windows) を押しながらクリックします。 - ストラクチャーエディターツールバーのオブジェクト追加メニューでリレーションオプションを選択します。

4Dはストラクチャーエディターの2テーブル間にリレーションを作成し、矢印で描画します。コネクターの始点および終点の形状、およびNや1の文字でリレーションの方向を判断できます:

インスペクターパレットにはリレーションのプロパティが表示されます (リレーションプロパティ参照)。
SQLを使用して作成されたリレーションは異なる表示 (四角のコネクター) が使用されます:
4Dではリレーションをいつでも削除できます。削除を行うには:
- 削除するリレーションを選択します。
リレーションが選択されると、外周が青で表示されます。 - リレーション上で右クリックし、コンテキストメニューから削除コマンドを選択します。
または
DeleteまたはBackspaceキーを押します。
両ケースで警告ダイアログが表示されるので、処理を続行するかキャンセルするかを選択できます。処理を続行すると、4Dはリレーションの矢印を削除し、テーブルのリレーションは解除されます。Nフィールドや1フィールドのインデックスはそのまま残されます。
リレーションはいつでも再設定できます。例えば誤ったフィールド間でリレーションを設定してしまったり、リレーションのプロパティを変更したい場合に、これを行うことになるでしょう。4Dではリレーションの線を再び引くことで、リレーションを再設定できます。
複雑なストラクチャーの場合、リレーションのコンテキストメニュー内にあるNフィールド選択や1フィールド選択コマンドを使用して、リレーション元フィールドとリレート先フィールドを選択することができます。
同じ2つのフィールド間でリレーションを再設定するには、ストラクチャーエディター上でリレーションをダブルクリックします。4Dはインスペクターパレットにリレーションプロパティを表示します。ここで必要な変更を行うことができます。
リレーションを再設定して1テーブルのフィールドを変更するには、Nフィールドからリレーションを再描画します。
リレーションを再設定してNテーブルのフィールドを変更するには、まずリレーションを削除して、新しいリレーションを作成します。