単純な列属性としての参照。次のルールは、列属性のREFERENCES制約にのみ適用されます。
- FOREIGN KEYは、テーブル制約外部キーの指定にのみ使用します。
- column_nameを指定しない場合、参照先のテーブルは単純なプライマリ キーを持っている必要があり、指定された外部キー列は、参照先テーブルのそのプライマリ キー列を参照します。
JSONデータ型の列にREFERENCES制約は指定できません。
名前なしのREFERENCES列制約には、この構文を使用します。
REFERENCES referenced_table_name (referenced_column_name)
- referenced_table_name
- 指定されたreferencing_columnが参照するプライマリ キーまたは代替キーを含むテーブルの名前。
- referenced_column_name
- referencing_columnが参照するプライマリ キーまたは代替キーを含むテーブルの名前。
- CONSTRAINT constraint_name
- 列属性の外部キー制約の名前。
名前付きのREFERENCES列制約には、この構文を使用します。
CONSTRAINT constraint_name REFERENCES referenced_table_name (referenced_column_name)
- WITH CHECK OPTION
- 参照整合性制約。リレーションシップの整合性は、1つのコンポーネントのトランザクション全体が完了したときにのみチェックされます。
列属性外部キー制約では、この句は次のように指定します。
REFERENCES WITH CHECK OPTION referenced_table_name (referenced_column_name)
トランザクション内のいずれかの行が参照整合性のルールを違反した場合、トランザクション全体がロールバックされます。
参照整合性ルールについては、<Teradata Vantage™ - データベースの設計、B035-1094>を参照してください。
このオプションは、テンポラル テーブルに対しては無効です。詳細については、<Teradata Vantage™ - テンポラル テーブル サポート、B035-1182>を参照してください。
この句は、ANSI SQL:2011規格に対するTeradataの拡張機能です。
- WITH NO CHECK OPTION
- 追加または削除される制約は、指定したプライマリ キーと外部キーの関係の参照整合性を評価するためには使用できません。
列属性の外部キー制約については、この句を次のように指定します。
REFERENCES WITH NO CHECK OPTION referenced_table_name (referenced_column_name)
これはテンポラル テーブルに対して有効な唯一の参照整合性オプションです。詳細については、<Teradata Vantage™ - テンポラル テーブル サポート、B035-1182>を参照してください。
テンポラル テーブルでこの句を使用する方法については、<Teradata Vantage™ - テンポラル テーブル サポート、B035-1182>を参照してください。
この句は、ANSI SQL:2011規格に対するTeradataの拡張機能です。