Практическое руководство. Заполнение данными набора данных
Заполнение набора данных фактически означает загрузку данных в отдельные объекты DataTable, составляющие набор данных.Таблицы данных заполняются путем выполнения запросов к адаптеру таблицы TableAdapter или вызова команд адаптера обработки данных (например, SqlDataAdapter).
Необходимость использования объектов TableAdapter или адаптеров обработки данных зависит от способа создания набора данных.При использовании средств разработки в Visual Studio, например мастер настройки источника данных, набор данных содержит адаптеры таблиц TableAdapter.Дополнительные сведения об адаптерах таблиц TableAdapter см. в разделе Общие сведения об адаптере таблиц.Если набор данных был создан программно, то, как правило, для загрузки данных в таблицы необходимо создание адаптеров обработки данных.
![]() |
---|
При перетаскивании элементов из Окно "Источники данных" на форму код для заполнения таблицы данными автоматически добавляется к обработчику событий Form_Load.Откройте форму в редакторе кода для просмотра точного синтаксиса заполнения отдельных таблиц.Если не требуется выполнять заполнение таблицы при загрузке формы, можно переместить этот код в другой метод или вообще удалить его. |
Заполнение набора данных с помощью адаптера таблицы TableAdapter
Можно вызвать запрос как метод объекта TableAdapter для загрузки данных в таблицы набора данных.Передайте DataTable, которую требуется заполнить, запросу адаптера таблицы TableAdapter.Если запрос использует параметры, также передайте их в метод.Если набор данных содержит несколько таблиц, следует иметь отдельные адаптеры таблиц TableAdapters для каждой таблицы и, следовательно, заполнять каждую таблицу отдельно.
![]() |
---|
По умолчанию при каждом выполнении запроса объекта TableAdapter данные в таблице очищаются перед загрузкой результатов запроса в таблицу.Можно сохранить существующие данные в таблице и добавить результаты, присвоив свойству ClearBeforeFill адаптера таблиц TableAdapter значение false. |
Для заполнения набора данных с помощью адаптера таблицы TableAdapter
Откройте форму или компонент в окне Редактор кода.
Добавьте код в любое место в приложении, где необходимо загрузить данные в таблицу.Если запрос не требует параметров, передайте DataTable, которую требуется заполнить.Код может выглядеть следующим образом:
Me.CustomersTableAdapter.Fill(Me.NorthwindDataSet.Customers)
this.customersTableAdapter.Fill(this.northwindDataSet.Customers);
Если запрос использует параметры, передайте DataTable, которую требуется заполнить, и параметры, ожидаемые запросом.В зависимости от фактических параметров в запросе код будет выглядеть аналогично следующим примерам:
CustomersTableAdapter.FillByCity(NorthwindDataSet.Customers, "Seattle") CustomersTableAdapter.FillByCityAndState(NorthwindDataSet.Customers, "Seattle", "WA")
customersTableAdapter.FillByCity(northwindDataSet.Customers, "Seattle"); customersTableAdapter.FillByCityAndState(northwindDataSet.Customers, "Seattle", "WA");
Заполнение набора данных с помощью адаптера данных DataAdapter
Вызовите метод Fill адаптера обработки данных.В результате адаптер выполнит инструкцию SQL или хранимую процедуру, на которую ссылается свойство SelectCommand, и поместит результат в таблицу набора данных.Если набор данных содержит несколько таблиц, для каждой таблицы необходимо иметь отдельный адаптер обработки данных и, следовательно, необходимо каждую таблицу заполнять отдельно.
Для заполнения набора данных с помощью адаптера данных DataAdapter
Вызовите метод Fill объекта DataAdapter, передав в него DataSet или DataTable для загрузки данных.Примеры.
sqlDataAdapter1.Fill(dataset1.Tables("Customers"))
sqlDataAdapter1.Fill(dataset1.Tables["Customers"]);
В обычном случае следует указать имя DataTable для загрузки данных.Если передается имя DataSet вместо конкретной таблицы данных, DataTable с именем Table1 будет добавлена в набор данных и загружена с результатами из базы данных (в отличие от загрузки данных в существующую DataTable в наборе данных).Дополнительные сведения см. в разделе Populating a DataSet from a DataAdapter.
См. также
Основные понятия
Подготовка приложения к получению данных
Привязка элементов управления к данным в Visual Studio