外部キーは、プライマリテーブルと別テーブルのレコード間の参照整合性を維持するために使用されるSQLデータベースのポインタです。
外部キーを持つ各レコードはプライマリキーによってレコードを示しており、[外部キー]テーブルはこれらのレコードの間の関係を定義します。[外部キー]テーブルは、[外部キー定義]テーブルと[外部キーセグメント]テーブルの2つのテーブルで構成されています。
プライマリキーと外部キーの関係を定義することで参照整合性が維持されます。RDBMSでは、テーブルの宣言または整合性の制限により参照制約を設定できます。
[外部キー]テーブルは、[外部キー定義]テーブルと[外部キーセグメント]テーブルの2つのテーブルを組み合わせたものです。
[外部キー定義]テーブルには、以下のカラムがあります。
カラム |
内容 |
外部キー番号(#) |
自動的に生成された連番が表示されます。この番号は、識別子として使用され、ユーザが変更することはできません。 |
名前 |
Magic xpaでの外部キーの名前です。この名前を使用して、RDBMSにおいて外部キーを定義します。外部キーは1つまたは複数のカラムの集合で、他のテーブルのプライマリキーを使用して1つのテーブル内の行を他のテーブルのユニークな行に関連付けます。 |
参照テーブル |
参照するテーブル番号を指定します。直接入力できるほか、ズームして、[テーブル一覧]から選択することもできます。 |
プライマリキー |
参照されるテーブル用のプライマリキーの名前です。 プライマリキーは、1つまたは複数のカラムで構成されたユニークなキーで、アクセスする場合の主要なキーとして使用されます。 テーブルは、1つ以上のユニークなキーがあっても、プライマリキーは1つしかありません。 |
DBに作成 |
外部キーの設定をRDBMSにも適用するか否かを指定します。 この欄がチェックされていない場合、外部キーの設定はMagic xpaの内部にのみ適用されます。設定を行うテーブルと参照するテーブルが同じデータベースの場合、この欄はデフォルトでチェックされます。 データベースが異なる場合、この欄は無効となり、外部キーの設定はRDBMSに適用されません。 |
この制約は、テーブル内のカラムの値を無条件に参照するテーブルのカラムと同じになるように制限します。現在のANSI規約では、この制約をテーブルの作成時または修正時に行う必要があります。
[外部キー]セグメントテーブルには、以下のカラムがあります。
カラム |
内容 |
カラム番号(#) |
自動的に生成された連番が表示されます。この番号は、識別子として使用され、ユーザが変更することはできません。 |
カラム |
参照テーブルのインデックスに対応するカラムを指定します。この欄からズームして、[テーブル一覧]から選択します。 現在のテーブルの中の各セグメントは、参照テーブル中に対応するセグメントを持っている必要があります。 |
参照テーブルのカラム番号(#) |
参照テーブルのセグメントの連番が表示されます。 |
参照テーブルのカラム |
参照テーブルのインデックスセグメントのカラム名が表示されます。参照キーを設定すると、自動的に設定されます。他のインデックスと交換すると、新しいインデックスセグメントに上書きされます。 |
注意: |
|
関連トピック: