ForeignKeyConstraint.DeleteRule プロパティ
行を削除したときにこの制約全体で発生するアクションを取得または設定します。
Public Overridable Property DeleteRule As Rule
[C#]
public virtual Rule DeleteRule {get; set;}
[C++]
public: __property virtual Rule get_DeleteRule();public: __property virtual void set_DeleteRule(Rule);
[JScript]
public function get DeleteRule() : Rule;public function set DeleteRule(Rule);
プロパティ値
Rule 値の 1 つ。既定値は Cascade です。
解説
親テーブルから行を削除すると、 DeleteRule によって、子テーブルの列で実行されるアクションが決定されます。規則が Cascade に設定されている場合、子行が削除されます。
SetNull に設定されている場合は、影響がある行の適切な列に DBnull が格納されます。データ ソースによって、列に null 値を格納できるかどうかが異なります。たとえば、SQLServer では null 値が一意ではなくても、複数の null 値を主キー列に格納できます。しかし、 DataTable では、 DataColumn オブジェクトの Unique プロパティが true に設定されている場合は、主キー列に複数の null 値を格納できません。
規則が SetDefault に設定されている場合は、列の既定値が割り当てられます。
使用例
[Visual Basic] ForeignKeyConstraint を作成し、その各種のプロパティを設定し、これを DataTable オブジェクトの ConstraintCollection に追加する例を次に示します。
' 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("SuppierFKConstraint", 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("Suppliers").Constraints.Add(myFKC)
myDataSet.EnforceConstraints = True
End Sub
[C#, C++, JScript] C#、C++、および JScript のサンプルはありません。Visual Basic のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: 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
参照
ForeignKeyConstraint クラス | ForeignKeyConstraint メンバ | System.Data 名前空間