ForeignKeyConstraint ForeignKeyConstraint ForeignKeyConstraint ForeignKeyConstraint Class

Définition

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.Represents an action restriction enforced on a set of columns in a primary key/foreign key relationship when a value or row is either deleted or updated.

public ref class ForeignKeyConstraint : System::Data::Constraint
[System.Serializable]
public class ForeignKeyConstraint : System.Data.Constraint
type ForeignKeyConstraint = class
    inherit Constraint
Public Class ForeignKeyConstraint
Inherits Constraint
Héritage
ForeignKeyConstraintForeignKeyConstraintForeignKeyConstraintForeignKeyConstraint
Attributs

Exemples

L’exemple suivant crée un ForeignKeyConstraint, définit certaines de ses propriétés et l’ajoute à un DataTable l’objet ConstraintCollection.The following example creates a ForeignKeyConstraint, sets some of its properties, and adds it to a DataTable object's 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 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 restreint l’action effectuée lorsqu’une valeur dans une colonne (ou les colonnes) est supprimée ou mise à jour.A ForeignKeyConstraint restricts the action performed when a value in a column (or columns) is either deleted or updated. Une telle contrainte est destinée à être utilisé avec les colonnes de clé primaire.Such a constraint is intended to be used with primary key columns. 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.In a parent/child relationship between two tables, deleting a value from the parent table can affect the child rows in one of the following ways.

  • L’enfant lignes peuvent également être supprimés (une action en cascade).The child rows can also be deleted (a cascading action).

  • Les valeurs dans la colonne enfant (ou les colonnes) peuvent être définies aux valeurs null.The values in the child column (or columns) can be set to null values.

  • Les valeurs dans la colonne enfant (ou les colonnes) peuvent être définies pour les valeurs par défaut.The values in the child column (or columns) can be set to default values.

  • Une exception peut être générée.An exception can be generated.

ForeignKeyConstraint objets sont contenus dans le ConstraintCollection d’un DataTable, qui est accessible via la Constraints propriété.ForeignKeyConstraint objects are contained in the ConstraintCollection of a DataTable, which is accessed through the Constraints property.

Les contraintes ne sont pas appliquées, sauf si le EnforceConstraints propriété est définie sur true.Constraints are not enforced unless the EnforceConstraints property is set to true.

Le AcceptRejectRule est appliquée chaque fois qu’un DataTable l’objet AcceptChanges méthode est appelée.The AcceptRejectRule is enforced whenever a DataTable object's AcceptChanges method is invoked.

Constructeurs

ForeignKeyConstraint(DataColumn, DataColumn) ForeignKeyConstraint(DataColumn, DataColumn) ForeignKeyConstraint(DataColumn, DataColumn) ForeignKeyConstraint(DataColumn, DataColumn)

Initialise une nouvelle instance de la classe ForeignKeyConstraint avec les objets DataColumn parent et enfant spécifiés.Initializes a new instance of the ForeignKeyConstraint class with the specified parent and child DataColumn objects.

ForeignKeyConstraint(DataColumn[], DataColumn[]) ForeignKeyConstraint(DataColumn[], DataColumn[]) ForeignKeyConstraint(DataColumn[], DataColumn[]) ForeignKeyConstraint(DataColumn[], DataColumn[])

Initialise une nouvelle instance de la classe ForeignKeyConstraint avec les tableaux d'objets DataColumn parent et enfant spécifiés.Initializes a new instance of the ForeignKeyConstraint class with the specified arrays of parent and child DataColumn objects.

ForeignKeyConstraint(String, DataColumn, DataColumn) ForeignKeyConstraint(String, DataColumn, DataColumn) ForeignKeyConstraint(String, DataColumn, DataColumn) 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.Initializes a new instance of the ForeignKeyConstraint class with the specified name, parent and child DataColumn objects.

ForeignKeyConstraint(String, DataColumn[], DataColumn[]) ForeignKeyConstraint(String, DataColumn[], DataColumn[]) ForeignKeyConstraint(String, DataColumn[], DataColumn[]) 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.Initializes a new instance of the ForeignKeyConstraint class with the specified name, and arrays of parent and child DataColumn objects.

ForeignKeyConstraint(String, String, String, String[], String[], AcceptRejectRule, Rule, Rule) ForeignKeyConstraint(String, String, String, String[], String[], AcceptRejectRule, Rule, Rule) ForeignKeyConstraint(String, String, String, String[], String[], AcceptRejectRule, Rule, Rule) 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.This constructor is provided for design time support in the Visual Studio environment. Les objets ForeignKeyConstraint créés à l'aide de ce constructeur doivent ensuite être ajoutés à la collection via AddRange(Constraint[]).ForeignKeyConstraint objects created by using this constructor must then be added to the 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().Tables and columns with the specified names must exist at the time the method is called, or if BeginInit() has been called prior to calling this constructor, the tables and columns with the specified names must exist at the time that EndInit() is called.

ForeignKeyConstraint(String, String, String[], String[], AcceptRejectRule, Rule, Rule) ForeignKeyConstraint(String, String, String[], String[], AcceptRejectRule, Rule, Rule) ForeignKeyConstraint(String, String, String[], String[], AcceptRejectRule, Rule, Rule) 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.This constructor is provided for design time support in the Visual Studio environment. Les objets ForeignKeyConstraint créés à l'aide de ce constructeur doivent ensuite être ajoutés à la collection via AddRange(Constraint[]).ForeignKeyConstraint objects created by using this constructor must then be added to the 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().Tables and columns with the specified names must exist at the time the method is called, or if BeginInit() has been called prior to calling this constructor, the tables and columns with the specified names must exist at the time that EndInit() is called.

Propriétés

AcceptRejectRule AcceptRejectRule AcceptRejectRule AcceptRejectRule

Indique l'action qui doit être effectuée dans cette contrainte en cas d'appel à AcceptChanges().Indicates the action that should take place across this constraint when AcceptChanges() is invoked.

Columns Columns Columns Columns

Obtient les colonnes enfants de cette contrainte.Gets the child columns of this constraint.

ConstraintName ConstraintName ConstraintName ConstraintName

Nom d'une contrainte dans ConstraintCollection.The name of a constraint in the ConstraintCollection.

(Inherited from Constraint)
DeleteRule DeleteRule DeleteRule DeleteRule

Obtient ou définit l'action qui se produit dans cette contrainte lorsqu'une ligne est supprimée.Gets or sets the action that occurs across this constraint when a row is deleted.

ExtendedProperties ExtendedProperties ExtendedProperties ExtendedProperties

Obtient la collection de propriétés de contrainte définies par l'utilisateur.Gets the collection of user-defined constraint properties.

(Inherited from Constraint)
RelatedColumns RelatedColumns RelatedColumns RelatedColumns

Colonnes parentes de cette contrainte.The parent columns of this constraint.

RelatedTable RelatedTable RelatedTable RelatedTable

Obtient la table parente de cette contrainte.Gets the parent table of this constraint.

Table Table Table Table

Obtient la table enfant de cette contrainte.Gets the child table of this constraint.

UpdateRule UpdateRule UpdateRule UpdateRule

Obtient ou définit l'action qui se produit dans cette contrainte lorsqu'une ligne est mise à jour.Gets or sets the action that occurs across this constraint on when a row is updated.

_DataSet _DataSet _DataSet _DataSet

Obtient le DataSet auquel cette contrainte appartient.Gets the DataSet to which this constraint belongs.

(Inherited from Constraint)

Méthodes

CheckStateForProperty() CheckStateForProperty() CheckStateForProperty() CheckStateForProperty()

Obtient le DataSet auquel cette contrainte appartient.Gets the DataSet to which this constraint belongs.

(Inherited from Constraint)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Obtient une valeur indiquant si le ForeignKeyConstraint actuel est identique à l'objet spécifié.Gets a value indicating whether the current ForeignKeyConstraint is identical to the specified object.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Obtient le code de hachage de cette instance de l'objet ForeignKeyConstraint.Gets the hash code of this instance of the ForeignKeyConstraint object.

GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
SetDataSet(DataSet) SetDataSet(DataSet) SetDataSet(DataSet) SetDataSet(DataSet)

Définit le DataSet de la contrainte.Sets the constraint's DataSet.

(Inherited from Constraint)
ToString() ToString() ToString() ToString()

Obtient le ConstraintName éventuel sous la forme d'une chaîne.Gets the ConstraintName, if there is one, as a string.

(Inherited from Constraint)

S’applique à

Cohérence de thread

Ce type est sécurisé pour les opérations de lecture multithreads.This type is safe for multithreaded read operations. Vous devez synchroniser des opérations d’écriture.You must synchronize any write operations.

Voir aussi