Rule-Enumeration
Gibt die Aktion an, die beim Erzwingen einer ForeignKeyConstraint-Klasse ausgeführt wird.
Namespace: System.Data
Assembly: System.Data (in system.data.dll)
Syntax
'Declaration
Public Enumeration Rule
'Usage
Dim instance As Rule
public enum Rule
public enum class Rule
public enum Rule
public enum Rule
Member
Membername | Beschreibung | |
---|---|---|
Cascade | Löschen oder Aktualisieren von verknüpften Zeilen. Dies ist die Standardeinstellung. | |
None | Es wird keine Aktion für verknüpfte Zeilen ausgeführt. | |
SetDefault | Festlegen der Werte in verknüpften Zeilen auf den Wert in der DefaultValue-Eigenschaft. | |
SetNull | Festlegen der Werte in verknüpften Zeilen auf DBNull. |
Hinweise
Die Rule-Werte werden auf die UpdateRule-Eigenschaft und die DeleteRule-Eigenschaft eines ForeignKeyConstraint-Objekts festgelegt, das sich in der ConstraintCollection eines DataTable-Objekts befindet.
Die Rule-Werte bestimmen die Aktion, die beim Löschen oder Aktualisieren eines Werts in einer Spalte ausgeführt wird. Hierbei ist das Löschen eines Werts der anspruchsvollere Vorgang beim Festlegen einer Regel.
Wenn ein Wert gelöscht wird, legt Cascade fest, dass auch alle Zeilen gelöscht werden, die ebenfalls diesen Wert enthalten. SetNull gibt an, dass Werte in allen untergeordneten Spalten auf NULL-Werte festgelegt werden. SetDefault gibt an, dass alle untergeordneten Spalten auf den Standardwert für die Spalte festgelegt werden. None gibt an, dass keine Aktion ausgeführt wird, sondern Ausnahmen ausgelöst werden.
Wenn ein Wert aktualisiert wird, legt Cascade fest, dass auch alle untergeordneten Spalten mit dem neuen Wert aktualisiert werden. SetNull gibt an, dass alle untergeordneten Spalten auf NULL-Werte festgelegt werden. SetDefault gibt an, dass alle untergeordneten Spaltenwerte auf den Standardwert festgelegt werden. None gibt an, dass keine Aktion ausgeführt wird, sondern Ausnahmen ausgelöst werden.
Einschränkungen für ein DataSet werden nur dann erzwungen, wenn die EnforceConstraints-Eigenschaft true ist.
Wenn die AcceptChanges-Methode aufgerufen wird, bestimmt AcceptRejectRule, welche Aktion im Folgenden ausgeführt werden soll.
Beispiel
' 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
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0, 1.0
Siehe auch
Referenz
System.Data-Namespace
DataTable.Constraints-Eigenschaft
ForeignKeyConstraint-Klasse