Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ADO как базовый объект доступа.doc
Скачиваний:
16
Добавлен:
15.12.2018
Размер:
1.48 Mб
Скачать

1.4.8. Связывание колонок таблиц источника данных и объекта DataSet через адаптер данных

В Visual Studio в объекте DataAdapter имеется возможность установить соответствие между колонками таблицы базы данных (источника данных) и колонками таблицы объекта DataSet. Это обеспечивает возможность сменить наименование колонок и сделать их удобочитаемыми как для разработчика, так и для конечного пользователя приложения.

Для установления соответствия между колонками таблиц выполните следующие действия.

  1. Создайте Объект DataAdapter.

  2. Мышью установите фокус на объекте DataAdapter в окне дизайнера формы и откройте окно Properties этого объекта.

  3. Далее в строке свойства TabieMappings нажмите кнопку (Collection) (рис. 1.28).

После этого откроется диалоговое окно TabieMappings (рис. 1.29).

  1. Если вы хотите использовать имена колонок из таблицы источника данных в колонках таблицы созданного объекта Dataset, установите флажок Use a dataset to suggest table and column names, и затем из списка Dataset выберите интересующий вас набор данных.

Далее вы можете выбрать нужную таблицу из источника данных — Sourse table, и нужную таблицу из результирующего набора данных — Dataset table. Имена колонок этих таблиц будут представлены соответственно в левой и правой части сетки Column mappings.

  1. В столбце Source table, выберите таблицу в источнике данных. Если там присутствует только одна таблица, то вместо ее имени будет стоять значение Table.

  2. В столбце Dataset table выберите таблицу из набора данных. Если вы уже определили набор данных на шаге 4, то имя таблицы будет уже заполнено (по умолчанию первая таблица набора данных будет отмечена как Table).

  3. На основе вашего выбора (или того, что было установлено по умолчанию), имена колонок будут внесены в список разделов Source Columnsи Dataset Columns. Иными словами, будет установлено соответствие между колонками: каждому названию колонки в левой части сетки Column mappings будет сопоставлено название соответствующей колонки в правой части.

  4. Далее модифицируйте это сопоставление так, как вам необходимо. С помощью таблицы можно выполнить следующие действия.

  • Изменить связи между колонками — к колонке объекта Dataset можно "привязать" любую другую колонку источника данных.

  • Удалить колонки. Это можно сделать в тех случаях, когда адаптер данных возвращает большее число колонок из источника данных, чем необходимо данному приложению.

  • Добавить колонки. Это необходимо в тех случаях, когда известно, что колонки будут заполнены данными динамически во время работы приложения, или если вы удалили колонку по ошибке и ее необходимо вернуть назад, или если вы полностью очистили адаптер данных и желаете сформировать его вручную.

Для примера изменим наименования колонок в Dataset и введем наименования колонок на русском языке (рис. 1.30).

  1. Когда закончен процесс взаимной привязки колонок, нажмите кнопку ОК.

  2. Если вы хотите определить, как должно вести себя приложение в случаях возникновения ошибок, в окне Properties выберите нужное значение свойств MissingMappingAction и MissingSchemaAction. В табл. 1.4 описаны возможные варианты и получаемый эффект.

Таблица 1.4. Возможные значения свойств MissingMappingAction и MissingSchemaAction и получаемый эффект

MissingMappingAction MissingSchemaAction

Эффект

Passthrough Add or AddWithKey

Если колонка существует в таблице

источника данных, но ее нет в табли-

це приемника данных, то эта колонка

будет создана динамически во время

заполнения данными объекта

DataSet. Эти значения установлены

по умолчанию, и такое задание по-

лезно тогда, когда необходимо ко-

пировать в набор данных все колон-

ки, доступные в источнике

Ignore Ignore

Если колонка не определена в схеме

набора данных, или нет никакой при-

вязки ее к источнику данных, то ин-

формация от источника данных не

будет перенесена в объект DataSet.

Эта установка полезна, если адаптер

возвращает больше колонок, чем

описано в приемнике данных

DataSet

Error Error

Будет сгенерирована ошибка во

время выполнения приложения, если

адаптер не сможет сопоставить ис-

ходную колонку с колонкой набора

данных. Эта установка полезна то-

гда, когда вам необходимо строгое

соблюдение описанной схемы обме-

на информацией между источником

и приемником данных

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]