Freigeben über


Erstellen einer Datentabelle

Eine DataTable stellt eine Tabelle mit im Speicher befindlichen relationalen Daten dar. Sie kann unabhängig erstellt und verwendet werden oder von anderen .NET Framework-Objekten verwendet werden, meist als Member eines DataSet.

Sie können ein DataTable-Objekt erstellen, indem Sie den DataTable-Konstruktor verwenden, oder indem Sie Konstruktorargumente an die Add-Methode der Tables-Eigenschaft des DataSet übergeben. Dies ist eine DataTableCollection.

Außerdem können Sie DataTable-Objekte innerhalb eines DataSet erstellen, indem Sie die Fill- oder die FillSchema-Methode des DataAdapter-Objekts verwenden, oder von einem vordefinierten oder abgeleiteten XML-Schema aus, indem Sie die ReadXml-, die ReadXmlSchema- oder die InferXmlSchema-Methode des DataSet verwenden. Beachten Sie Folgendes: Nachdem Sie eine DataTable als Member der Tables-Auflistung eines DataSet hinzugefügt haben, können Sie sie keiner Auflistung von Tabellen eines anderen DataSet mehr hinzufügen.

Wenn Sie eine DataTable erstellen, hat diese zunächst kein Schema (Struktur). Um das Schema der Tabelle zu definieren, müssen Sie DataColumn-Objekte erstellen und diese der Columns-Auflistung der Tabelle hinzufügen. Sie können auch eine Primärschlüsselspalte für die Tabelle definieren und dann Constraint-Objekte erstellen und diese der Constraints-Auflistung der Tabelle hinzufügen. Nachdem Sie ein Schema für eine DataTable definiert haben, können Sie der Tabelle Zeilen mit Daten hinzufügen, indem Sie der Rows-Auflistung der Tabelle DataRow-Objekte hinzufügen.

Es ist nicht erforderlich, einen Wert für die TableName-Eigenschaft bereitzustellen, wenn Sie eine DataTable erstellen. Sie können die Eigenschaft entweder zu einem anderen Zeitpunkt angeben oder leer lassen. Wenn Sie jedoch einem DataSet eine Tabelle ohne einen TableName-Wert hinzufügen, erhält die Tabelle den inkrementellen Standardnamen TableN, beginnend mit "Table" für Table0.

**Hinweis   **Es wird davon abgeraten, die Benennungskonvention "Table" oder "TableN" zu verwenden, wenn Sie einen TableName-Wert bereitstellen, da dieser Name u. U. einen Konflikt mit einem bereits vorhandenen Standardtabellennamen im DataSet verursacht. Wenn der angegebene Name bereits vorhanden ist, wird eine Ausnahme ausgelöst.

Im folgenden Beispiel wird eine Instanz eines DataTable-Objekts erstellt, der der Name "Customers" zugewiesen wird.

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

Im folgenden Beispiel wird eine Instanz einer DataTable erstellt, indem diese der Tables-Auflistung eines DataSet hinzugefügt wird.

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");

Siehe auch

Erstellen und Verwenden von Datentabellen | Auffüllen eines DataSets mit einem DataAdapter-Objekt | Laden eines DataSets aus XML | Laden von DataSet-Schemainformationen aus XML | DataTable-Klasse | DataTableCollection-Klasse