ForeignKeyConstraint.DeleteRule Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví akci, která se vyskytuje v rámci tohoto omezení při odstranění řádku.
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
Hodnota vlastnosti
Jedna z Rule hodnot. Výchozí hodnota je Cascade.
- Atributy
Příklady
Následující příklad vytvoří ForeignKeyConstraint, nastaví různé jeho vlastnosti a přidá ho do DataTable objektu ConstraintCollection.
' 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
Poznámky
Když je řádek odstraněn z nadřazené tabulky, určuje, DeleteRule co se stane ve sloupcích podřízené tabulky (nebo tabulek). Pokud je pravidlo nastavené na Cascade, budou odstraněny podřízené řádky.
Pokud je nastavená hodnota SetNull, DBNull umístí se do příslušných sloupců ovlivněných řádků. V závislosti na zdroji dat může nebo nemusí být ve sloupci povolená hodnota null. SQL Server například umožňuje nalezení více hodnot null ve sloupci primárního klíče, i když nejsou jedinečné. Pokud je však vlastnost objektu DataTableDataColumnUnique nastavena na true, více hodnot null nejsou povoleny ve sloupcích primárního klíče.
Pokud je nastavená hodnota SetDefault, přiřadí se výchozí hodnota sloupce.