次の方法で共有


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 内)

参照

System.Data 名前空間 | Constraints | ForeignKeyConstraint