Практическое руководство. Добавление столбцов в объект DataTable

Можно создать отдельные столбцы (DataColumn), составляющие таблицы данных (DataTable), добавив их в DataColumnCollection таблицы данных. Можно добавлять столбцы к таблицам данных визуально с помощью Конструктора наборов данных или с помощью одного из мастеров. Дополнительные сведения о добавлении столбцов данных в таблицы данных программно см. в разделе Добавление столбцов к DataTable.

После добавления столбцов можно настроить их для удовлетворения требований. Например, можно задать значение по умолчанию, либо ограничение уникальности для столбца. Можно также указать, что столбец должен отображать вычисляемое значение, а не значение прочитанного непосредственно из базы данных.

Примечание

Отображаемые диалоговые окна и команды меню могут отличаться от описанных в справке в зависимости от текущих настроек или выпуска.Чтобы изменить параметры, в меню Сервис выберите команду Импорт и экспорт параметров.Для получения дополнительной информации см. Customizing Development Settings in Visual Studio.

Общие задачи

Задача

Справочные материалы

Добавление столбцов в таблицы: Можно добавлять столбцы с помощью конструктора наборов данных, мастера конфигурации источника данных или мастера конфигурации адаптера таблиц.

Столбцы Настройка DataColumns: добавляются со свойствами по умолчанию. Можно настраивать параметры для каждого DataColumn для определения его расширение функциональности. Например, можно определить тип данных, значение по умолчанию, или ограничение столбца, чтобы содержать уникальные значения. Кроме того, можно настроить столбец для отображения вычисляемого значения вместо значения, считываемые непосредственно из базы данных.

Добавление столбцов в таблицы данных.

Прежде чем можно настроить DataColumn, сначала необходимо добавить его в DataTable. Это можно сделать с помощью любой из следующих процедур.

Для добавления столбца в DataTable с помощью конструктора наборов данных

  1. Откройте набор данных в Конструкторе наборов данных. Для получения дополнительной информации см. Практическое руководство. Открытие набора данных в конструкторе наборов данных.

  2. Щелкните правой кнопкой мыши DataTable, чтобы добавить столбец. В открывшемся контекстном меню выберите Добавить, а затем щелкните Столбец.

  3. При необходимости замените имя столбца по умолчанию, выбрав имя столбца в таблице данных и отредактировав текст.

  4. Задайте свойство DataType в окне Свойства.

Для добавления столбца DataTable с помощью мастера настройки источника данных

  1. В окне Источники данных щелкните правой кнопкой мыши источник данных и выберите Настроить набор данных с помощью мастера.

  2. Разверните таблицу, в которую необходимо добавить столбец.

  3. Выберите столбцы для добавления в таблицу.

  4. Нажмите кнопку Готово.

Для добавления столбца DataTable с помощью мастера настройки адаптера таблицы

  1. Откройте набор данных в Конструкторе наборов данных. Для получения дополнительной информации см. Практическое руководство. Открытие набора данных в конструкторе наборов данных.

  2. Щелкните правой кнопкой мыши таблицу данных и выберите Настроить.

  3. Добавьте столбец в инструкцию SELECT.

  4. Нажмите кнопку Готово.

Настройка DataColumns

После добавления DataColumn, необходимо указать расширение функциональности, DataColumn. Например, если необходимо изменить тип данных или ограничить его только, чтобы содержать уникальные значения. Можно использовать любую из следующих, чтобы изменить расширение функциональности DataColumn.

0c5wf85e.collapse_all(ru-ru,VS.140).gifУстанавливать тип данных DataColumn

Столбцы данных (DataColumn) создаются по умолчанию с типом данных String. Чтобы изменить тип данных столбца, задайте свойство DataType в окне Свойства.

Чтоб задать тип данных столбца DataColumn:

  1. Откройте набор данных в Конструкторе наборов данных.

  2. Выберите столбец, для которого следует задать тип данных.

  3. В окне Свойства выберите нужный тип данных из списка DataType.

0c5wf85e.collapse_all(ru-ru,VS.140).gifОпределение заголовок DataColumn

Столбцы данных часто имеют имена, не подходящие для отображения в пользовательском интерфейсе. Можно изменить заголовок на более подходящее имя, установив свойство Caption в окне Свойства.

Примечание

При перетаскивании элементов из окна Источники данных на форму в приложении Windows необходимо учесть следующую особенность: если два или более слов оказываются объединенными последовательно, имена столбцов в названиях переформатируются в строку, более удобную для чтения.Для получения дополнительной информации см. Практическое руководство. Настройка способа создания подписи для элемента управления с привязкой к данным в Visual Studio.

Чтобы изменить заголовок столбца данных

  1. Откройте набор данных в Конструкторе наборов данных. Для получения дополнительной информации см. Практическое руководство. Открытие набора данных в конструкторе наборов данных.

  2. Выберите столбец, название которого требуется изменить.

  3. В окне Свойства установите свойство Caption.

0c5wf85e.collapse_all(ru-ru,VS.140).gifУказание, что DataColumn содержит автоматически сгенерированные номера

Столбцы данных (DataColumn) часто содержат автоматически сгенерированные последовательные номера, например первичные ключи и идентификаторы столбцов. Можно загрузить автоматически сгенерированные числа в столбцы данных, задав свойства AutoIncrement, AutoIncrementSeed и AutoIncrementStep.

При создании столбцов данных посредством использования средств разработки Visual Studio столбцы автоматически помечаются как AutoIncrement. При обновлении таблицы в базе данных, содержащей столбец Identity, значения, созданные с помощью функции автоматической нумерации, не отправляются в базу данных.

Для настройки столбца данных таким образом, чтобы он содержал автоматически сгенерированные номера:

  1. Откройте набор данных в Конструкторе наборов данных.

  2. Выберите столбец, который следует заполнять автоматически сгенерированными номерами.

  3. В окне Свойства задайте следующие значения свойств:

    Свойство

    Параметр

    AutoIncrement

    true

    AutoIncrementSeed

    Если вы хотите начать c номера, отличного от значения 0, задаваемого по умолчанию, задайте значение начального номера для этого столбца.

    AutoIncrementStep

    В каждой новой строке содержимое увеличивается на это значение.

    Примечание

    Задание столбца автоприращения не делает выбранный столбец первичным ключом.

0c5wf85e.collapse_all(ru-ru,VS.140).gifПрисвоить значение по умолчанию для DataColumn

Столбцам данных могут быть назначены значения по умолчанию. Значение по умолчанию назначается в столбце по мере создания новых строк (записей).

Чтобы присвоить значение по умолчанию столбцу данных:

  1. Откройте набор данных в Конструкторе наборов данных.

  2. Выберите столбец, которому нужно присвоить значение по умолчанию.

  3. В окне Свойства задайте свойству DefaultValue нужное значение по умолчанию.

0c5wf85e.collapse_all(ru-ru,VS.140).gifОграничения DataColumn содержал уникальные значения

Чтобы DataColumn содержал уникальные значения, необходимо добавить ограничение уникальности к таблице данных. Ограничения уникальности также называются ключами. Пометка столбца в качестве первичного ключа в конструкторе набора данных создается ограничение уникальности

Чтобы создать ограничение для столбца, который должен содержать уникальные значения

  1. Откройте набор данных в Конструкторе наборов данных.

  2. Щелкните правой кнопкой мыши столбец, для которого требуется установить ограничение уникальности значения. Укажите Добавить, а затем выберите Ключ.

  3. Убедитесь, что в диалоговом окне Ограничение уникальности выбран правильный столбец.

  4. При необходимости, замените имя ограничения по умолчанию более понятным для вас именем.

0c5wf85e.collapse_all(ru-ru,VS.140).gifУстановка DataColumn первичным ключом в DataTable

Задание столбца данных в качестве первичного ключа гарантирует, что каждая запись содержит уникальное значение. Таблице данных может быть назначен только один первичный ключ. Создание первичного ключа в таблице данных производится с помощью Конструктора наборов данных.

Чтобы задать столбец данных, который будет выступать в качестве первичного ключа в таблице данных

  1. Откройте набор данных в Конструкторе наборов данных.

  2. Щелкните правой кнопкой мыши столбец, который требуется установить в качестве первичного ключа. Нажмите Задать первичный ключ.

    Рядом с выбранным столбцом (столбцами) появляется значок ключа.

0c5wf85e.collapse_all(ru-ru,VS.140).gifОпределение возвращаемое значение, если значение в столбце данных DataColumn:

В типизированном наборе данных можно контролировать представление столбцов, содержащих значения null. Такое поведение доступно только при извлечении значений столбцов через их типизированные средства доступа. При извлечении значения с помощью индекса строки таблицы или индекса столбца будет невозможно задать возвращаемое значение. Причиной этого является то, что логика возврата этого значения встроена в свойство Setter конкретного столбца данных в классе созданного набора данных.

Для возврата значения при пустом значении в столбце данных DataColumn:

  1. Откройте набор данных в Конструкторе наборов данных.

  2. Выберите столбец в таблице данных.

  3. В окне Свойства выберите свойство NullValue.

  4. Выполните одно из следующих действий.

    • Выберите из раскрывающегося списка соответствующее значение:

      Значение

      Описание

      (Пусто)

      Возвращает значения NULL String.Empty.

      (ничего)

      Возвращает значения NULL как DBNull.

      (Происходит исключение)

      Значения NULL создают Exception.

      -или-

    • Присвойте свойству любое пользовательское значение, допустимое для типа данных этого столбца. Например, если для столбца с типом данных String задать в качестве значения строку "Нет значения", то все записи, содержащие значения NULL, в этом столбце будут отображаться как "Нет значения".

Настройка DataColumn для отображения выражения

Таблица данных в наборе данных может содержать столбцы, значения которых вычисляются, а не считываются из базы данных. Например, в записи, содержащей подробные сведения о заказах, часто имеет смысл определять значение ExtendedPrice путем умножения количества на цену одного заказа, вместо того, чтобы хранить общую сумму в записи. В вычисляемых столбцах также можно добавлять или подсчитывать значения в дочерних записях, а также фильтровать другие записи. Определять вычисляемые столбцы можно с помощью выражений.

Синтаксис выражения состоит из стандартных операторов. К значениям данных можно обращаться по имени соответствующего столбца (как это делается в инструкциях SQL), а также включать в выражения агрегатные функции, такие как Count.

Например, выражение для столбца текущей записи ExtendedPrice, который отображает значение UnitPrice, взятое Quantity раз, может быть следующим:

UnitPrice * Quantity

Для обращения к столбцам дочерних таблиц можно использовать зарезервированное слово Child, после которого указывается имя столбца. Например, следующее выражение возвращает среднее значение столбца Price во всех связанных дочерних записях:

Avg(Child.Price)

Дополнительные сведения см. в свойстве Expression.

Столбцы для выражений можно создать в Конструкторе наборов данных. Дополнительные сведения о создании столбцов см. в разделе Практическое руководство. Добавление столбцов в объект DataTable.

Для создания выражений для столбцов в Конструкторе наборов данных

  1. Откройте набор данных в Конструкторе наборов данных. Для получения дополнительной информации см. Практическое руководство. Открытие набора данных в конструкторе наборов данных.

  2. В требуемой таблице данных выберите столбец, в который требуется добавить выражение, или добавьте к таблице новый столбец. Для получения дополнительной информации см. Практическое руководство. Добавление столбцов в объект DataTable.

  3. В окне Свойства введите выражение в свойстве Expression.

Связанные разделы

Категория

Раздел

Данные обзора. Дополнительные сведения о работе с данными в Visual Studio.

Дополнительные процедуры: Сведения о других процедурах для работы с данными.

Ссылку. Сведения о классах и элементах, используемые при работе с данными.