Ce sujet n'a pas encore été évalué - Évaluez ce sujet

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.

Espace de noms :  System.Data
Assembly :  System.Data (dans System.Data.dll)
public class ForeignKeyConstraint : Constraint
public class ForeignKeyConstraint extends Constraint
public class ForeignKeyConstraint extends Constraint

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


System.Object
  System.Data.Constraint
    System.Data.ForeignKeyConstraint

Ce type est sécurisé pour les opérations de lecture multithread. Vous devez synchroniser les opérations d'écriture.

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.

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Pris en charge dans : 3.5, 2.0, 1.0

XNA Framework

Pris en charge dans : 1.0
Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
© 2013 Microsoft. Tous droits réservés.