エンティティ制約ウィザード - プロパティ・ページ
キー制約固有の詳細を入力する際に使用します。
-
キー・タイプ
-
作成するキー制約のタイプを指定します。
-
主キー
-
表のPRIMARY KEY制約の定義に含まれる列または列のセットです。属性ページで選択した属性または属性のセットは、表の主キー制約に含まれる列として解釈されます。これらの属性は、対応するデータベース表の列にある一意の値を示す際に使用されます。主キーの値によって、表にある行が一意に識別されます。主キーの整合性制約によって、次のことが保証されます。
-
指定の列または列のセットで、表の複数の行で重複する値がないこと。
-
主キーの列にNULLが含まれていないこと(つまり、各行の主キーの列に値が存在することが必要)。
主キーは1つの表に1つのみ定義できます。
-
一意
-
表の主キー制約の定義に含まれる列または列のセットです。主キーの値によって、表にある行が一意に識別されます。それぞれの表に対して、1つ以上の一意キーを定義できます。
-
チェック条件
-
チェック整合性制約では属性を使用しません。列または列のセットにあるCHECK整合性制約では、表のすべての行に対して条件を
true
に指定する必要があります。DML文の結果、CHECK制約の条件がfalse
であると評価された場合、その文はロールバックされます。
「チェック」を選択する場合は、「条件」も入力する必要があります。条件の例としては、列の値がNULLでないかどうかをチェックするPL/SQLコードの一部があります。CHECK制約の条件には、次のようにいくつかの制限があります。
-
チェック制約は、挿入または更新が行われている行の値を使用して評価されるブール式である必要があります。
-
チェック制約には、副問合せ、順序、SQL関数
SYSDATE、UID、USER、USERENV
または疑似列LEVEL
やROWNUM
は含まれません。
-
外部キー参照
-
参照整合性(FOREIGN KEY)制約の定義に含まれる列または列のセットです。
「外部キー」を選択する場合は、外部キーの「参照」も入力する必要があります。
属性ページで選択した属性または属性のセットは、参照整合性制約に含まれている列であると解釈されます。参照整合性制約では、表の各行について、外部キーの値が主キーの値と一致している必要があります。「外部キー」を選択する場合は、外部キーが参照する主キーまたは一意キーの主キー(または一意キー)制約名も入力する必要があります。
「参照」フィールドに、外部キーが参照する主キー(または一意キー)制約名を入力します。
-
カスケード削除
-
このオプションを選択した場合、参照キー値を含む行を削除すると、依存外部キー値を持つ子表の行もすべて削除されます。これが削除「カスケード」です。
たとえば、親表にある行が削除され、この行の主キー値が子表の1つ以上の外部キー値によって参照されている場合、主キー値を参照する子表の行も子表から削除されます。
-
キー・プロパティ
-
キー検証オプションを指定します。
-
必須
-
「必須」を選択する場合は、列または列のセットをNULL以外にする必要があります。
-
検証の遅延チェックを許可
-
制約のチェックをトランザクション終了まで遅延できることを示します。
-
最初の検証を遅延する
-
この制約が遅延可能であり、デフォルトでは各トランザクションの終了時にのみチェックされるよう指定します。
-
検証の無効化
-
制約を無効化し、制約の索引を削除して、制約された列の変更を禁止します。新規の列または変更された列は、いずれも制約に違反する可能性があります。
-
検証を有効化し、既存データを検証
-
制約がチェックされ、この制約は新規および既存の列データに対してtrueである必要があります。
-
検証の有効化
-
これはENABLEと同じです。制約がチェックされ、その制約によって新規行をすべて保持することが保証されます。既存列のデータはチェックされません。
Copyright © 1997, 2006, Oracle. All rights reserved.