Rule 列挙型
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ForeignKeyConstraint が適用されたときに発生するアクションを示します。
public enum class Rule
public enum Rule
type Rule =
Public Enum Rule
- 継承
フィールド
| 名前 | 値 | 説明 |
|---|---|---|
| None | 0 | 関連する行に対するアクションは実行されません。 |
| Cascade | 1 | 関連する行を削除または更新します。 これが既定値です。 |
| SetNull | 2 | 関連する行の値を |
| SetDefault | 3 | 関連する行の値を、 DefaultValue プロパティに含まれる値に設定します。 |
例
' The next line goes into the Declarations section of the module:
' SuppliersProducts is a class derived from DataSet.
Private suppliersProducts As SuppliersProducts
Private Sub CreateConstraint()
' Declare parent column and child column variables.
Dim parentColumn As DataColumn
Dim childColumn As DataColumn
Dim fkeyConstraint As ForeignKeyConstraint
' Set parent and child column variables.
parentColumn = suppliersProducts.Tables("Suppliers").Columns("SupplierID")
childColumn = suppliersProducts.Tables("Products").Columns("SupplierID")
fkeyConstraint = New ForeignKeyConstraint( _
"SupplierFKConstraint", parentColumn, childColumn)
' Set null values when a value is deleted.
fkeyConstraint.DeleteRule = Rule.SetNull
fkeyConstraint.UpdateRule = Rule.Cascade
fkeyConstraint.AcceptRejectRule = AcceptRejectRule.Cascade
' Add the constraint, and set EnforceConstraints to true.
suppliersProducts.Tables("Products").Constraints.Add(fkeyConstraint)
suppliersProducts.EnforceConstraints = True
End Sub
注釈
Rule値は、DataTable オブジェクトのConstraintCollectionにあるForeignKeyConstraint オブジェクトのUpdateRuleプロパティとDeleteRule プロパティに設定されます。
Rule値は、列の値が削除または更新されたときに発生するアクションを決定します。 2 つのうち、値の削除は、ルールを設定する際のより重要で注意が必要です。
値が削除された場合、 Cascade は、その値を含むすべての行も削除されるように指定します。
SetNull は、すべての子列の値が null 値に設定されることを指定します。
SetDefault は、すべての子列を列の既定値に設定することを指定します。
None は、アクションは発生しませんが、例外が生成されることを指定します。
値が更新された場合、 Cascade は、すべての子列が同様に新しい値で更新されることを指定します。
SetNull は、すべての子列を null 値に設定することを指定します。
SetDefault は、すべての子列の値を既定値に設定することを指定します。
None は、アクションは実行されませんが、例外が生成されることを指定します。
EnforceConstraints プロパティがtrueされていない限り、DataSetに対する制約は適用されません。
AcceptChanges メソッドが呼び出されると、AcceptRejectRuleによって、発生するアクションがさらに決定されます。