Freigeben über


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
Unterstützt von .NET Compact Framework Cascade Löschen oder Aktualisieren von verknüpften Zeilen. Dies ist die Standardeinstellung. 
Unterstützt von .NET Compact Framework None Es wird keine Aktion für verknüpfte Zeilen ausgeführt. 
Unterstützt von .NET Compact Framework SetDefault Festlegen der Werte in verknüpften Zeilen auf den Wert in der DefaultValue-Eigenschaft. 
Unterstützt von .NET Compact Framework 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