Rule Wyliczenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wskazuje akcję, która występuje, gdy ForeignKeyConstraint jest wymuszana.
public enum class Rule
public enum Rule
type Rule =
Public Enum Rule
- Dziedziczenie
Pola
Cascade | 1 | Usuń lub zaktualizuj powiązane wiersze. Jest to opcja domyślna. |
None | 0 | Brak akcji podjętej w powiązanych wierszach. |
SetDefault | 3 | Ustaw wartości w powiązanych wierszach na wartość zawartą DefaultValue we właściwości. |
SetNull | 2 | Ustaw wartości w powiązanych wierszach na |
Przykłady
' 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
Uwagi
Wartości Rule są ustawione na UpdateRule właściwości ForeignKeyConstraint i DeleteRule obiektu znajdującego się w DataTable obiekcie ConstraintCollection.
Wartości Rule określają akcję, która występuje, gdy wartość w kolumnie jest usuwana lub aktualizowana. Z tych dwóch, usuwanie wartości jest bardziej krytyczne i wymaga uwagi podczas ustawiania reguły.
W przypadku usunięcia wartości określa, Cascade
że wszystkie wiersze zawierające te wartości są również usuwane. SetNull
określa, że wartości we wszystkich kolumnach podrzędnych są ustawione na wartości null. SetDefault
Określa, że wszystkie kolumny podrzędne mają być ustawione na wartość domyślną kolumny. None
określa, że nie zostanie wykonana żadna akcja, ale są generowane wyjątki.
W przypadku aktualizacji wartości określa, Cascade
że wszystkie kolumny podrzędne są również aktualizowane przy użyciu nowej wartości. SetNull
określa, że wszystkie kolumny podrzędne mają być ustawione na wartości null. SetDefault
Określa, że wszystkie wartości kolumn podrzędnych mają być ustawione na wartość domyślną. None
określa, że nie należy podejmować żadnych działań, ale są generowane wyjątki.
Ograniczenia elementu nie DataSet są wymuszane, chyba że EnforceConstraints właściwość ma true
wartość .
Po wywołaniu AcceptChanges metody dalsze określenie, AcceptRejectRule jaka akcja występuje.