ForeignKeyConstraint.DeleteRule Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Aktion ab, die für diese Einschränkung beim Löschen einer Zeile ausgeführt wird, oder legt diese fest.
public:
virtual property System::Data::Rule DeleteRule { System::Data::Rule get(); void set(System::Data::Rule value); };
public virtual System.Data.Rule DeleteRule { get; set; }
[System.Data.DataSysDescription("ForeignKeyConstraintDeleteRuleDescr")]
public virtual System.Data.Rule DeleteRule { get; set; }
member this.DeleteRule : System.Data.Rule with get, set
[<System.Data.DataSysDescription("ForeignKeyConstraintDeleteRuleDescr")>]
member this.DeleteRule : System.Data.Rule with get, set
Public Overridable Property DeleteRule As Rule
Eigenschaftswert
Einer der Rule-Werte. Der Standardwert ist Cascade.
- Attribute
Beispiele
Im folgenden Beispiel wird ein ForeignKeyConstraint erstellt, verschiedene eigenschaften festgelegt und dem Objekt ConstraintCollectionhinzugefügtDataTable.
' 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 fkConstraint As ForeignKeyConstraint
' Set parent and child column variables.
parentColumn = suppliersProducts.Tables("Suppliers").Columns("SupplierID")
childColumn = suppliersProducts.Tables("Products").Columns("SupplieriD")
fkConstraint = New ForeignKeyConstraint( _
"SuppierFKConstraint", parentColumn, childColumn)
' Set null values when a value is deleted.
fkConstraint.DeleteRule = Rule.SetNull
fkConstraint.UpdateRule = Rule.Cascade
fkConstraint.AcceptRejectRule = AcceptRejectRule.Cascade
' Add the constraint, and set EnforceConstraints to true.
suppliersProducts.Tables("Suppliers").Constraints.Add(fkConstraint)
suppliersProducts.EnforceConstraints = True
End Sub
Hinweise
Wenn eine Zeile aus einer übergeordneten Tabelle gelöscht wird, bestimmt dies DeleteRule , was in den Spalten der untergeordneten Tabelle (oder Tabellen) geschieht. Wenn die Regel auf Cascade", untergeordnete Zeilen" festgelegt ist, werden untergeordnete Zeilen gelöscht.
Wenn festgelegt SetNullist, wird eine DBNull in den entsprechenden Spalten der betroffenen Zeilen platziert. Je nach Datenquelle kann ein Nullwert in einer Spalte möglicherweise oder nicht zulässig sein. Beispielsweise können SQL Server mehrere Nullwerte in einer Primärschlüsselspalte gefunden werden, auch wenn sie nicht eindeutig sind. Wenn die Eigenschaft eines DataTableDataColumn Objekts Unique jedoch auf truefestgelegt ist, sind mehrere NULL-Werte in Primärschlüsselspalten nicht zulässig.
Wenn der SetDefaultStandardwert für die Spalte festgelegt ist, wird der Standardwert für die Spalte zugewiesen.