Поделиться через


Добавление столбцов к DataTable (ADO.NET)

Обновлен: November 2007

DataTable содержит коллекцию объектов DataColumn, на которые ссылается свойство Columns таблицы. Эта коллекция столбцов наряду с ограничениями определяет схему, или структуру, таблицы.

Создаются объекты DataColumn в таблице, используя конструктор DataColumn или вызывая метод Add свойства Columns таблицы, которая является объектом DataColumnCollection. Метод Add принимает необязательные аргументы ColumnName, DataType и Expression и создает новый DataColumn как член коллекции. Он также принимает существующий объект DataColumn и добавляет его в коллекцию, а также возвращает ссылку на добавленный DataColumn, если требуется. Так как объекты DataTable не являются специфичными для какого-либо источника данных, типы .NET Framework используются при задании типов данных для DataColumn.

В следующем примере добавляются четыре столбца к объекту DataTable.

Dim workTable As DataTable = New DataTable("Customers")

Dim workCol As DataColumn = workTable.Columns.Add( _
    "CustID", Type.GetType("System.Int32"))
workCol.AllowDBNull = false
workCol.Unique = true

workTable.Columns.Add("CustLName", Type.GetType("System.String"))
workTable.Columns.Add("CustFName", Type.GetType("System.String"))
workTable.Columns.Add("Purchases", Type.GetType("System.Double"))
DataTable workTable = new DataTable("Customers");

DataColumn workCol = workTable.Columns.Add("CustID", typeof(Int32));
workCol.AllowDBNull = false;
workCol.Unique = true;

workTable.Columns.Add("CustLName", typeof(String));
workTable.Columns.Add("CustFName", typeof(String));
workTable.Columns.Add("Purchases", typeof(Double));

Обратите внимание, что в данном примере свойства для столбца CustID установлены так, что не позволяют значениям DBNull и значениям ограничений быть уникальными. Но если столбец CustID определяется как столбец первичного ключа таблицы, свойство AllowDBNull будет автоматически установлено в false, а свойство Unique будет автоматически установлено в true. Дополнительные сведения см. в разделе Определение первичных ключей (ADO.NET).

hfx3s9wd.alert_caution(ru-ru,VS.90).gifВнимание!

Если для столбца не предоставляется имя, ему присваивается имя по умолчанию ColumnN с увеличивающимся суффиксом N, начиная с «Column1», когда столбец добавляется в DataColumnCollection. При предоставлении имени столбца мы рекомендуем избегать такого соглашения об именах, как «ColumnN», т. к. предоставляемое имя может вступить в конфликт с существующим именем по умолчанию столбца в DataColumnCollection. Если указанное имя уже существует, возникает исключение.

См. также

Ссылки

DataColumn

DataColumnCollection

DataTable

Другие ресурсы

Определение схемы DataTable (ADO.NET)

DataTable (ADO.NET)