Добавление новой таблицы данных в набор данных

ADO.NET позволяет создавать объекты DataTable и добавлять их к существующему DataSet. Можно задать данные ограничения для DataTable, используя свойства PrimaryKey и Unique.

Пример

Следующий пример показывает, как создать объект DataSet, добавить новый объект DataTable к DataSet, а затем добавить к таблице три объекта DataColumn. В конце код задает один столбец в качестве столбца первичного ключа.

DataSet customerOrders = new("CustomerOrders");

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

DataColumn pkOrderID =
    ordersTable.Columns.Add("OrderID", typeof(int));
ordersTable.Columns.Add("OrderQuantity", typeof(int));
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}

Чувствительность к регистру

В DataSet могут существовать две или более таблицы или отношения с одинаковыми именами, но разным регистром. В таких случаях ссылки по имени на таблицы и связи задаются с учетом регистра. Например, если DataSetdataSet содержит таблицы Table1 и table1, вы будете ссылать table1 по имени dataSet.Tables["Table1"], а таблица1dataSet.Tables["table1"]. Попытка ссылаться на любую из таблиц как dataSet.Tables["TABLE1"] создаст исключение.

Чувствительность к регистру не учитывается, если только одна таблица или отношение имеет определенное имя. Например, если DataSet содержит только Table1, вы можете ссылаться на него с помощью dataSet.Tables["TABLE1"].

Примечание.

Свойство CaseSensitive объекта DataSet не влияет на данное поведение. Свойство CaseSensitive применяется к данным в DataSet и затрагивает сортировку, поиск, фильтрацию, предписание ограничений и т. д.

Поддержка пространства имен

В версиях ADO.NET, выпущенных до версии 2.0, две таблицы не могли иметь одинаковое имя, даже если находились в разных пространствах имен. Это ограничение было снято в ADO.NET 2.0. Набор данных DataSet может содержать две таблицы, имеющие одинаковое значение свойства TableName, но различные значения свойства Namespace.

См. также