Partager via


Création d'un DataTable

Un DataTable, qui représente une table de données relationnelles en mémoire, peut être créé et utilisé de façon indépendante. Il peut également être utilisé par d'autres objets .NET Framework, la plupart du temps comme membre d'un DataSet.

Vous pouvez créer un objet DataTable en utilisant le constructeur DataTable ou en passant les arguments du constructeur à la méthode Add de la propriété Tables du DataSet, qui est un DataTableCollection.

Vous pouvez également créer des objets DataTable dans un DataSet à l'aide des méthodes Fill ou FillSchema de l'objet DataAdapter ou à partir d'un schéma XML prédéfini ou inféré à l'aide des méthodes ReadXml, ReadXmlSchema ou InferXmlSchema du DataSet. Notez qu'une fois que vous avez ajouté un DataTable comme membre de la collection Tables d'un DataSet, vous ne pouvez pas l'ajouter à la collection de tables d'un autre DataSet.

Lorsque vous créez un DataTable, celui-ci ne possède pas encore de schéma (structure). Pour définir le schéma de la table, vous devez créer et ajouter des objets DataColumn à la collection Columns de la table. Vous pouvez également définir une colonne clé primaire pour la table et créer et ajouter des objets Constraint à la collection Constraints de la table. Après avoir défini le schéma d'un DataTable, vous pouvez ajouter des lignes de données à la table en ajoutant des objets DataRow à la collection Rows de la table.

Lors de la création d'un DataTable, il n'est pas nécessaire que vous fournissiez une valeur pour la propriété TableName. Vous pouvez définir cette propriété ultérieurement ou la laisser vide. Néanmoins, lorsque vous ajoutez à un DataSet une table sans valeur TableName, un nom incrémentiel par défaut, TableN, sera attribué à cette table. Ce nom sera « Table » pour Table0.

**Remarque   **Il est recommandé d'éviter d'utiliser la convention d'affectation de noms « Table » ou « TableN » lorsque vous fournissez une valeur TableName, car le nom fourni peut entrer en conflit avec un nom de table par défaut existant du DataSet. Si le nom fourni existe déjà, une exception sera levée.

L'exemple suivant crée une instance d'un objet DataTable et lui assigne le nom « Customers ».

Dim workTable as DataTable = New DataTable("Customers")
[C#]
DataTable workTable = new DataTable("Customers");

L'exemple suivant crée une instance d'un DataTable en l'ajoutant à la collection Tables d'un DataSet.

Dim custDS As DataSet = New DataSet
Dim custTable As DataTable = custDS.Tables.Add("CustTable")
[C#]
DataSet custDS = new DataSet();
DataTable custTable = custDS.Tables.Add("CustTable");

Voir aussi

Création et utilisation de DataTables | Remplissage d'un DataSet à partir d'un DataAdapter | Chargement d'un DataSet à partir de XML | Chargement des informations de schéma d'un DataSet à partir de XML | DataTable, classe | DataTableCollection, classe