ConstraintCollection, classe (System.Data)

Bibliothèque de classes .NET Framework 
ConstraintCollection, classe 

Représente une collection de contraintes pour DataTable.

Espace de noms : System.Data
Assembly : System.Data (dans system.data.dll)

SyntaxeSyntaxe


Visual Basic (Déclaration)
Public NotInheritable Class ConstraintCollection
    Inherits InternalDataCollectionBase


Visual Basic (Utilisation)
Dim instance As ConstraintCollection


C#
public sealed class ConstraintCollection : InternalDataCollectionBase


C++
public ref class ConstraintCollection sealed : public InternalDataCollectionBase


J#
public final class ConstraintCollection extends InternalDataCollectionBase


JScript
public final class ConstraintCollection extends InternalDataCollectionBase
NotesNotes

ConstraintCollection est accessible via la propriété DataTable.Constraints.

ConstraintCollection peut contenir à la fois des objets UniqueConstraint et ForeignKeyConstraint pour DataTable. Un objet UniqueConstraint garantit que les données d'une colonne spécifique sont toujours uniques afin de préserver leur intégrité. ForeignKeyConstraint détermine ce qui se passe dans les tables connexes lorsque les données de DataTable sont mises à jour ou supprimées. Par exemple, si une ligne est supprimée, ForeignKeyConstraint détermine si les lignes connexes sont également supprimées (en cascade), ou si une autre action est exécutée.

RemarqueRemarque

Si vous ajoutez un DataRelation qui crée une relation entre deux tables à DataSet, cela crée automatiquement un ForeignKeyConstraint et un UniqueConstraint. UniqueConstraint est appliqué à la colonne de clé primaire du DataTable parent et la contrainte est ajoutée au ConstraintCollection de cette table. ForeignKeyConstraint est appliqué à la colonne de clé primaire ainsi qu'à la colonne clé étrangère, et la contrainte est ajoutée au ConstraintCollection de la table enfant.

ConstraintCollection utilise des méthodes de collection standard, telles que Add, Clear et Remove. En outre, la méthode Contains peut être utilisée pour rechercher l'existence d'une contrainte particulière dans la collection.

UniqueConstraint est créé lorsque DataColumn, ayant la valeur true affectée à sa propriété Unique, est ajouté au DataColumnCollection d'un objet DataTable.

ForeignKeyConstraint est créé lorsque DataRelation est ajouté au DataRelationCollection d'un objet DataSet.

ExempleExemple

Le premier exemple crée DataTable et ajoute DataColumn (ayant la valeur true affectée à sa propriété Unique) à DataColumnCollection. Le deuxième exemple crée DataSet, deux objets DataTable, quatre colonnes et DataRelation. Le nombre de contraintes est ensuite affiché pour indiquer que ForeignKeyConstraint et UniqueConstraint sont créés lorsque DataRelation est ajouté au DataRelationCollection de l'objet DataSet.



Visual Basic
Private Sub MakeTableWithUniqueConstraint()

    Dim table As New DataTable("table")
    Dim column As New DataColumn("UniqueColumn")
    column.Unique = True
    table.Columns.Add(column)

    ' Print count, name, and type.
    Console.WriteLine("Constraints.Count " _
       + table.Constraints.Count.ToString())
    Console.WriteLine(table.Constraints(0).ConstraintName)
    Console.WriteLine( _
        table.Constraints(0).GetType().ToString())

    ' Add a second unique column.
    column = New DataColumn("UniqueColumn2")
    column.Unique = True
    table.Columns.Add(column)

    ' Print info again.
    Console.WriteLine("Constraints.Count " _
       + table.Constraints.Count.ToString())
    Console.WriteLine(table.Constraints(1).ConstraintName)
    Console.WriteLine( _
        table.Constraints(1).GetType().ToString())
End Sub

Private Sub MakeTableWithForeignConstraint()

    ' Create a DataSet.
    Dim dataSet As New DataSet("dataSet")

    ' Make two tables.
    Dim customersTable As New DataTable("Customers")
    Dim ordersTable As New DataTable("Orders")

    ' Create four columns, two for each table.
    Dim name As New DataColumn("Name")
    Dim id As New DataColumn("ID")
    Dim orderId As New DataColumn("OrderID")
    Dim orderDate As New DataColumn("OrderDate")
    
    ' Add columns to tables.
    customersTable.Columns.Add(name)
    customersTable.Columns.Add(id)
    ordersTable.Columns.Add(orderId)
    ordersTable.Columns.Add(orderDate)
    
    ' Add tables to the DataSet.
    dataSet.Tables.Add(customersTable)
    dataSet.Tables.Add(ordersTable)

    ' Create a DataRelation for two of the columns.
    Dim myRelation As New DataRelation _
       ("CustomersOrders", id, orderId, True)
    dataSet.Relations.Add(myRelation)

    ' Print TableName, Constraints.Count, 
    ' ConstraintName and Type.
    Dim t As DataTable
    For Each t In  dataSet.Tables
        Console.WriteLine(t.TableName)
        Console.WriteLine("Constraints.Count " _
           + t.Constraints.Count.ToString())
        Console.WriteLine("ParentRelations.Count " _
           + t.ParentRelations.Count.ToString())
        Console.WriteLine("ChildRelations.Count " _
           + t.ChildRelations.Count.ToString())
        Dim cstrnt As Constraint
        For Each cstrnt In  t.Constraints
            Console.WriteLine(cstrnt.ConstraintName)
            Console.WriteLine(cstrnt.GetType())
        Next cstrnt
    Next t
End Sub


C#
private void MakeTableWithUniqueConstraint()
{
    DataTable table = new DataTable("table");
    DataColumn column = new DataColumn("UniqueColumn");
    column.Unique=true;
    table.Columns.Add(column);

    // Print count, name, and type.
    Console.WriteLine("Constraints.Count " 
        + table.Constraints.Count);
    Console.WriteLine(table.Constraints[0].ConstraintName);
    Console.WriteLine(table.Constraints[0].GetType() );

    // Add a second unique column.
    column = new DataColumn("UniqueColumn2");
    column.Unique=true;
    table.Columns.Add(column);

    // Print info again.
    Console.WriteLine("Constraints.Count " 
        + table.Constraints.Count);
    Console.WriteLine(table.Constraints[1].ConstraintName);
    Console.WriteLine(table.Constraints[1].GetType() );
}
 
private void MakeTableWithForeignConstraint()
{
    // Create a DataSet.
    DataSet dataSet = new DataSet("dataSet");

    // Make two tables.
    DataTable customersTable= new DataTable("Customers");
    DataTable ordersTable = new DataTable("Orders");

    // Create four columns, two for each table.
    DataColumn name = new DataColumn("Name");
    DataColumn id = new DataColumn("ID");
    DataColumn orderId = new DataColumn("OrderID");
    DataColumn cDate = new DataColumn("OrderDate");
 
    // Add columns to tables.
    customersTable.Columns.Add(name);
    customersTable.Columns.Add(id);
    ordersTable.Columns.Add(orderId);
    ordersTable.Columns.Add(cDate);
 
    // Add tables to the DataSet.
    dataSet.Tables.Add(customersTable);
    dataSet.Tables.Add(ordersTable); 

    // Create a DataRelation for two of the columns.
    DataRelation myRelation = new 
        DataRelation("CustomersOrders",id,orderId,true);
    dataSet.Relations.Add(myRelation);

    // Print TableName, Constraints.Count, 
    // ConstraintName and Type.
    foreach(DataTable t in dataSet.Tables)
    {
        Console.WriteLine(t.TableName);
        Console.WriteLine("Constraints.Count " 
            + t.Constraints.Count);
        Console.WriteLine("ParentRelations.Count " 
            + t.ParentRelations.Count);
        Console.WriteLine("ChildRelations.Count " 
            + t.ChildRelations.Count);
        foreach(Constraint cstrnt in t.Constraints)
        {
            Console.WriteLine(cstrnt.ConstraintName);
            Console.WriteLine(cstrnt.GetType());
        }
    }
}
Hiérarchie d'héritageHiérarchie d'héritage
System.Object
   System.Data.InternalDataCollectionBase
    System.Data.ConstraintCollection
Sécurité des threadsSécurité des threads

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

Plates-formesPlates-formes

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

Informations de versionInformations de version

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0

.NET Compact Framework

Prise en charge dans : 2.0, 1.0
Voir aussiVoir aussi

Ces informations proviennent du site de http://msdn2.microsoft.com
Source de cette page : http://msdn2.microsoft.com/fr-fr/library/system.data.constraintcollection.aspx

Réseaux sociaux

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.

 

Nuage de mots clés

8 mots clés dont 0 définis manuellement (plus d'information...).

Avertissement

Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.

 

Astuce pour imprimer les couleurs des cellules de tableaux : http://www.gaudry.be/ast-rf-450.html
Aucun commentaire pour cette page

© Ce document issu de l′infobrol est enregistré sous le certificat Cyber PrInterDeposit Digital Numbertection. Enregistrement IDDN n° 5329-4353
Document créé le 18/10/06 03:45, dernière modification le Vendredi 17 Juin 2011, 12:11
Source du document imprimé : http://www.gaudry.be/dotnet-rf-system.data.constraintcollection.html Document affiché 4 fois ce mois de Mai.
St.Gaudry©07.01.02
Outils (masquer)
||
Recherche (afficher)
Recherche :

Utilisateur (masquer)
Apparence (afficher)
Stats (afficher)
15832 documents
452 astuces.
549 niouzes.
3099 definitions.
447 membres.
8115 messages.

Document genere en :
1,35 seconde

Mises à jour :
Mises à jour du site
Citation (masquer)
La vie est un conte de fée qui perd ses pouvoirs magiques lorsque nous grandissons.

Robert Lalonde [Extrait de Le diable en personne]
 
l'infobrol
Nous sommes le Jeudi 31 Mai 2012, 18:59, toutes les heures sont au format GMT+1.00 Heure, heure d'été (+1)