ForeignKeyConstraint, classe
Mise à jour : novembre 2007
Représente une restriction d'action appliquée à un jeu de colonnes dans une relation de clé primaire/clé étrangère lorsqu'une valeur ou une ligne est supprimée ou mise à jour.
Assembly : System.Data (dans System.Data.dll)
ForeignKeyConstraint restreint l'action effectuée lorsqu'une valeur d'une ou plusieurs colonnes est supprimée ou mise à jour. Une telle contrainte est destinée à une utilisation avec des colonnes de clé primaire. Dans une relation parent/enfant entre deux tables, la suppression d'une valeur de la table parente peut affecter les lignes enfants d'une des manières suivantes.
Les lignes enfants peuvent également être supprimées (action en cascade).
Vous pouvez affecter des valeurs null comme valeurs des colonnes enfants.
Vous pouvez affecter les valeurs par défaut comme valeurs des colonnes enfants.
Une exception peut être générée.
Les objets ForeignKeyConstraint sont contenus dans le ConstraintCollection de DataTable, accessible à l'aide de la propriété Constraints.
Les contraintes ne sont pas appliquées à moins que la propriété EnforceConstraints ait true comme valeur.
AcceptRejectRule est appliqué à chaque appel à la méthode AcceptChanges d'un objet DataTable.
L'exemple suivant crée ForeignKeyConstraint, définit plusieurs de ses propriétés et l'ajoute au ConstraintCollection d'un objet DataTable.
' 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
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC, Xbox 360
Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.