Partager via


ForeignKeyConstraint.DeleteRule Propriété

Définition

Obtient ou définit l'action qui se produit dans cette contrainte lorsqu'une ligne est supprimée.

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

Valeur de propriété

Une des valeurs de l'objet Rule. La valeur par défaut est Cascade.

Attributs

Exemples

L’exemple suivant crée un ForeignKeyConstraint, définit diverses de ses propriétés et l’ajoute à l’objet DataTableConstraintCollection.

' 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

Remarques

Lorsqu’une ligne est supprimée d’une table parente, détermine DeleteRule ce qui se passera dans les colonnes de la ou des tables enfants. Si la règle est définie sur Cascade, les lignes enfants sont supprimées.

Si la valeur est définie SetNullsur , un DBNull sera placé dans les colonnes appropriées des lignes affectées. Selon votre source de données, une valeur null peut être autorisée ou non dans une colonne. Par exemple, SQL Server permet de trouver plusieurs valeurs null dans une colonne de clé primaire, même si elles ne sont pas uniques. Dans un DataTable, toutefois, si la propriété d’un DataColumnUnique objet est définie sur true, plusieurs valeurs null ne sont pas autorisées dans les colonnes de clé primaire.

Si la valeur est définie SetDefaultsur , la valeur par défaut de la colonne est affectée.

S’applique à