Hinzufügen einer "DataTable" zu einem "DataSet"Adding a DataTable to a DataSet

Mit ADO.NET können Sie DataTable-Objekte erstellen und diese zu einem vorhandenen DataSet hinzufügen.ADO.NET enables you to create DataTable objects and add them to an existing DataSet. Mit der DataTable-Eigenschaft und der PrimaryKey-Eigenschaft können Sie Einschränkungsinformationen für eine Unique festlegen.You can set constraint information for a DataTable by using the PrimaryKey and Unique properties.

BeispielExample

Im folgenden Beispiel wird ein DataSet erstellt und dem DataTable ein neues DataSet-Objekt hinzugefügt. Anschließend werden der Tabelle drei DataColumn-Objekte hinzugefügt.The following example constructs a DataSet, adds a new DataTable object to the DataSet, and then adds three DataColumn objects to the table. Zum Schluss wird durch den Code eine Spalte als Primärschlüsselspalte festgelegt.Finally, the code sets one column as the primary key column.

DataSet customerOrders = new DataSet("CustomerOrders");

DataTable ordersTable = customerOrders.Tables.Add("Orders");

DataColumn pkOrderID = 
    ordersTable.Columns.Add("OrderID", typeof(Int32));
ordersTable.Columns.Add("OrderQuantity", typeof(Int32));
ordersTable.Columns.Add("CompanyName", typeof(string));

ordersTable.PrimaryKey = new DataColumn[] { pkOrderID };
Dim customerOrders As New DataSet("CustomerOrders")

Dim ordersTable As DataTable = customerOrders.Tables.Add("Orders")

Dim pkOrderID As DataColumn = ordersTable.Columns.Add( _
    "OrderID", Type.GetType("System.Int32"))
ordersTable.Columns.Add("OrderQuantity", Type.GetType("System.Int32"))
ordersTable.Columns.Add("CompanyName", Type.GetType("System.String"))

ordersTable.PrimaryKey = New DataColumn() {pkOrderID}

Groß- und KleinschreibungCase Sensitivity

Ein DataSet kann zwei oder mehr Tabellen oder Beziehungen mit demselben Namen, aber unterschiedlicher Schreibweise enthalten.Two or more tables or relations with the same name, but different casing, can exist in a DataSet. In solchen Fällen muss in Verweisen auf Namen von Tabellen oder Beziehungen die Groß- und Kleinschreibung berücksichtigt werden.In such cases, references by name to tables and relations are case sensitive. Wenn das DataSet z DataSet . b. die Tabellen Table1 und Table1enthält, verweisen Sie auf Table1 by Name als DataSet. Tables ["table1"] und Table1 as DataSet. Tables ["table1"] .For example, if the DataSet dataSet contains tables Table1 and table1, you would reference Table1 by name as dataSet.Tables["Table1"], and table1 as dataSet.Tables["table1"]. Wenn Sie versuchen, auf eine der Tabellen als DataSet. Tables ["table1"] zu verweisen, wird eine Ausnahme generiert.Attempting to reference either of the tables as dataSet.Tables["TABLE1"] would generate an exception.

Die Groß- und Kleinschreibung muss nicht berücksichtigt werden, wenn nur eine Tabelle oder Beziehung einen bestimmten Namen aufweist.The case-sensitivity behavior does not apply if only one table or relation has a particular name. Wenn DataSet beispielsweise nur über Table1verfügt, können Sie mithilfe von DataSet. Tables ["table1"] darauf verweisen.For example, if the DataSet has only Table1, you can reference it using dataSet.Tables["TABLE1"].

Hinweis

Die CaseSensitive-Eigenschaft des DataSet hat keine Auswirkungen auf dieses Verhalten.The CaseSensitive property of the DataSet does not affect this behavior. Die CaseSensitive-Eigenschaft gilt für die Daten im DataSet und hat Auswirkungen auf das Sortieren, Suchen, Filtern, Erzwingen von Einschränkungen, usw.The CaseSensitive property applies to the data in the DataSet and affects sorting, searching, filtering, enforcing constraints, and so on.

Unterstützte NamespacesNamespace Support

Vor ADO.NET 2.0 konnten zwei Tabellen nicht den gleichen Namen haben, selbst wenn sie sich in unterschiedlichen Namespaces befanden.In versions of ADO.NET earlier than 2.0, two tables could not have the same name, even if they were in different namespaces. Diese Einschränkung wurde in ADO.NET 2.0 aufgehoben.This limitation was removed in ADO.NET 2.0. Ein DataSet kann zwei Tabellen enthalten, die den gleichen TableName-Eigenschaftswert, aber unterschiedliche Namespace-Eigenschaftswerte aufweisen.A DataSet can contain two tables that have the same TableName property value but different Namespace property values.

Siehe auchSee also