ForeignKeyConstraint Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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.
public ref class ForeignKeyConstraint : System::Data::Constraint
public class ForeignKeyConstraint : System.Data.Constraint
[System.Serializable]
public class ForeignKeyConstraint : System.Data.Constraint
type ForeignKeyConstraint = class
inherit Constraint
[<System.Serializable>]
type ForeignKeyConstraint = class
inherit Constraint
Public Class ForeignKeyConstraint
Inherits Constraint
- Héritage
- Attributs
Exemples
L’exemple suivant crée un ForeignKeyConstraint, définit certaines de ses propriétés et l’ajoute à l’objet ConstraintCollectionDataTable .
' 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
Remarques
Un ForeignKeyConstraint limite l’action effectuée lorsqu’une valeur d’une colonne (ou de colonnes) est supprimée ou mise à jour. Une telle contrainte est destinée à être utilisée avec les 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 de l’une des manières suivantes.
Les lignes enfants peuvent également être supprimées (action en cascade).
Les valeurs de la colonne enfant (ou des colonnes) peuvent être définies sur des valeurs null.
Les valeurs de la colonne enfant (ou des colonnes) peuvent être définies sur les valeurs par défaut.
Une exception peut être générée.
ForeignKeyConstraint les objets sont contenus dans le ConstraintCollection d’un DataTable, qui est accessible via la Constraints propriété .
Les contraintes ne sont pas appliquées, sauf si la EnforceConstraints propriété est définie sur true
.
est AcceptRejectRule appliqué chaque fois que la méthode d’un DataTableAcceptChanges objet est appelée.
Constructeurs
ForeignKeyConstraint(DataColumn, DataColumn) |
Initialise une nouvelle instance de la classe ForeignKeyConstraint avec les objets DataColumn parent et enfant spécifiés. |
ForeignKeyConstraint(DataColumn[], DataColumn[]) |
Initialise une nouvelle instance de la classe ForeignKeyConstraint avec les tableaux d'objets DataColumn parent et enfant spécifiés. |
ForeignKeyConstraint(String, DataColumn, DataColumn) |
Initialise une nouvelle instance de la classe ForeignKeyConstraint avec le nom spécifié ainsi que les objets DataColumn parent et enfant déterminés. |
ForeignKeyConstraint(String, DataColumn[], DataColumn[]) |
Initialise une nouvelle instance de la classe ForeignKeyConstraint avec le nom spécifié ainsi que les tableaux d'objets DataColumn parent et enfant déterminés. |
ForeignKeyConstraint(String, String, String, String[], String[], AcceptRejectRule, Rule, Rule) |
Ce constructeur est fourni pour assurer la prise en charge au moment du design dans l'environnement Visual Studio. Les objets ForeignKeyConstraint créés à l'aide de ce constructeur doivent ensuite être ajoutés à la collection via AddRange(Constraint[]). Les tables et colonnes portant les noms spécifiés doivent exister au moment de l'appel à la méthode, ou, si BeginInit() est appelé avant ce constructeur, les tables et colonnes portant les noms spécifiés doivent exister au moment de l'appel à EndInit(). |
ForeignKeyConstraint(String, String, String[], String[], AcceptRejectRule, Rule, Rule) |
Ce constructeur est fourni pour assurer la prise en charge au moment du design dans l'environnement Visual Studio. Les objets ForeignKeyConstraint créés à l'aide de ce constructeur doivent ensuite être ajoutés à la collection via AddRange(Constraint[]). Les tables et colonnes portant les noms spécifiés doivent exister au moment de l'appel à la méthode, ou, si BeginInit() est appelé avant ce constructeur, les tables et colonnes portant les noms spécifiés doivent exister au moment de l'appel à EndInit(). |
Propriétés
_DataSet |
Obtient le DataSet auquel cette contrainte appartient. (Hérité de Constraint) |
AcceptRejectRule |
Indique l'action qui doit être effectuée dans cette contrainte en cas d'appel à AcceptChanges(). |
Columns |
Obtient les colonnes enfants de cette contrainte. |
ConstraintName |
Nom d'une contrainte dans ConstraintCollection. (Hérité de Constraint) |
DeleteRule |
Obtient ou définit l'action qui se produit dans cette contrainte lorsqu'une ligne est supprimée. |
ExtendedProperties |
Obtient la collection de propriétés de contrainte définies par l'utilisateur. (Hérité de Constraint) |
RelatedColumns |
Colonnes parentes de cette contrainte. |
RelatedTable |
Obtient la table parente de cette contrainte. |
Table |
Obtient la table enfant de cette contrainte. |
UpdateRule |
Obtient ou définit l'action qui se produit dans cette contrainte lorsqu'une ligne est mise à jour. |
Méthodes
CheckStateForProperty() |
Obtient le DataSet auquel cette contrainte appartient. (Hérité de Constraint) |
Equals(Object) |
Obtient une valeur indiquant si le ForeignKeyConstraint actuel est identique à l'objet spécifié. |
GetHashCode() |
Obtient le code de hachage de cette instance de l'objet ForeignKeyConstraint. |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
SetDataSet(DataSet) |
Définit le DataSet de la contrainte. (Hérité de Constraint) |
ToString() |
Obtient le ConstraintName éventuel sous la forme d'une chaîne. (Hérité de Constraint) |
S’applique à
Cohérence de thread
Ce type est sécurisé pour les opérations de lecture multithread. Vous devez synchroniser toutes les opérations d’écriture.