Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ShPORY_BD.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.64 Mб
Скачать

Тема 5. Выборка данных в приложение. Заполнение данными набора данных. Создание запросов TableAdapter. Изменение запросов TableAdapter. Создание классов linq to sql (реляционный конструктор объектов).

Заполнение набора данных фактически означает загрузку данных в отдельные объекты DataTable, составляющие набор данных. Таблицы данных заполняются путем выполнения запросов к адаптеру таблицы TableAdapter или вызова команд адаптера обработки данных (например, SqlDataAdapter).

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

При перетаскивании элементов из окно "Источники данных" на форму код для заполнения таблицы данными автоматически добавляется к обработчику событий Form_Load. Если не требуется выполнять заполнение таблицы при загрузке формы, можно переместить этот код в другой метод или вообще удалить его.

Заполнение набора данных с помощью адаптера таблицы TableAdapter

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

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

Для заполнения набора данных с помощью адаптера таблицы TableAdapter

  1. Откройте форму или компонент в окне Редактор кода.

  2. Добавьте код в любое место в приложении, где необходимо загрузить данные в таблицу. Если запрос не требует параметров, передайтеDataTable, которую требуется заполнить. Код может выглядеть следующим образом:

this.customersTableAdapter.Fill(this.northwindDataSet.Customers);

  1. Если запрос использует параметры, передайте DataTable, которую требуется заполнить, и параметры, ожидаемые запросом. В зависимости от фактических параметров в запросе код будет выглядеть аналогично следующим примерам:

customersTableAdapter.FillByCity(northwindDataSet.Customers, "Seattle");

customersTableAdapter.FillByCityAndState(northwindDataSet.Customers, "Seattle", "WA");

Заполнение набора данных с помощью адаптера данных DataAdapter

Вызовите метод Fill адаптера обработки данных. В результате адаптер выполнит инструкцию SQL или хранимую процедуру, на которую ссылается свойство SelectCommand, и поместит результат в таблицу набора данных. Если набор данных содержит несколько таблиц, для каждой таблицы необходимо иметь отдельный адаптер обработки данных и, следовательно, необходимо каждую таблицу заполнять отдельно.

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