Rule 列挙体
ForeignKeyConstraint を適用した場合に実行されるアクションを示します。
<Serializable>
Public Enum Rule
[C#]
[Serializable]
public enum Rule
[C++]
[Serializable]
__value public enum Rule
[JScript]
public
Serializable
enum Rule
解説
Rule 値は、 DataTable オブジェクトの ConstraintCollection 内に存在する、 ForeignKeyConstraint オブジェクトの UpdateRule プロパティと DeleteRule プロパティに設定されます。
Rule 値は、列内の値を削除または更新したときに実行されるアクションを決定します。削除と更新のうち、規則を設定するときに重要で注意が必要なのは、削除の方です。
値の削除の場合、Cascade は、その値が格納されている他のすべての行も削除することを指定します。SetNull は、すべての子列内の値が null 値に設定されることを指定します。SetDefault は、すべての子列をその列の既定値に設定することを指定します。None は、何もアクションを実行せず、例外を生成することを指定します。
値の更新の場合、Cascade は、すべての子列も同様に新しい値で更新することを指定します。SetNull は、すべての子列を null 値に設定することを指定します。SetDefault は、すべての子列の値を既定値に設定することを指定します。None は、何もアクションを実行せず、例外を生成することを指定します。
EnforceConstraints プロパティが true の場合を除いては、 DataSet に対する制約は適用されません。
AcceptChanges メソッドを呼び出すと、 AcceptRejectRule によって実行するアクションも決定されます。
メンバ
メンバ名 | 説明 |
---|---|
Cascade
.NET Compact Framework でもサポート。 |
関連行を削除または更新します。これは、既定の設定です。 |
None
.NET Compact Framework でもサポート。 |
関連行で何もアクションが実行されません。 |
SetDefault
.NET Compact Framework でもサポート。 |
関連行の値を DefaultValue プロパティに格納されている値に設定します。 |
SetNull
.NET Compact Framework でもサポート。 |
関連行の値を DBNull に設定します。 |
使用例
' The next line goes into the Declarations section of the module:
' SuppliersProducts is a class derived from DataSet.
Private myDataSet As SuppliersProducts
Private Sub CreateConstraint()
' Declare parent column and child column variables.
Dim pCol As DataColumn
Dim cCol As DataColumn
Dim myFKC As ForeignKeyConstraint
' Set parent and child column variables.
pCol = MyDataSet.Tables("Suppliers").Columns("SupplierID")
cCol = MyDataSet.Tables("Products").Columns("SupplierID")
myFKC = New ForeignKeyConstraint("SupplierFKConstraint", pCol, cCol)
' Set null values when a value is deleted.
myFKC.DeleteRule = Rule.SetNull
myFKC.UpdateRule = Rule.Cascade
myFKC.AcceptRejectRule = AcceptRejectRule.Cascade
' Add the constraint, and set EnforceConstraints to true.
myDataSet.Tables("Products").Constraints.Add(myFKC)
myDataSet.EnforceConstraints = True
End Sub
[C#, C++, JScript] C#、C++、および JScript のサンプルはありません。Visual Basic のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
名前空間: System.Data
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET
アセンブリ: System.Data (System.Data.dll 内)