Бөлісу құралы:


IDataAdapter.Fill(DataSet) Метод

Определение

Добавляет или обновляет строки в DataSet соответствии с этими строками в источнике данных с помощью DataSet имени и создает DataTable "Таблица".

public:
 int Fill(System::Data::DataSet ^ dataSet);
public int Fill(System.Data.DataSet dataSet);
abstract member Fill : System.Data.DataSet -> int
Public Function Fill (dataSet As DataSet) As Integer

Параметры

dataSet
DataSet

Для DataSet заполнения записей и, при необходимости, схемы.

Возвращаемое значение

Число строк, успешно добавленных в или обновленных в DataSet Это не включает строки, затронутые операторами, которые не возвращают строки.

Комментарии

Fill извлекает строки из источника данных с помощью инструкции SELECT, указанной связанным SelectCommand свойством. Объект подключения, связанный с инструкцией SELECT, должен быть допустимым, но его не нужно открывать. Если соединение закрыто перед Fill вызовом, оно открывается для получения данных, а затем закрывается. Если соединение открыто перед Fill вызовом, оно остается открытым.

Затем операция Fill добавляет строки в целевые DataTable объекты, DataSetсоздавая DataTable объекты, если они еще не существуют. При создании DataTable объектов Fill операция обычно создает только метаданные имени столбца. Однако если MissingSchemaAction для свойства задано AddWithKeyзначение, также создаются соответствующие первичные ключи и ограничения.

Если SelectCommand возвращает результаты ВНЕШНЕГО СОЕДИНЕНИЯ, DataAdapter не устанавливает значение PrimaryKey для результирующего DataTable. Необходимо явно определить первичный ключ, чтобы убедиться, что повторяющиеся строки разрешаются правильно. Дополнительные сведения см. в разделе "Определение первичных ключей".

Если при IDataAdapter заполнении DataTableстолбцов возникают повторяющиеся столбцы, он создает имена для последовательных столбцов, используя шаблон columnname1, columnname2, columnname3 и т. д. Если входящие данные содержат неименованные столбцы, они помещаются в DataSet шаблон "Column1", "Column2" и т. д. При добавлении DataSetнескольких результирующих наборов в группу результатов каждый результирующий набор помещается в отдельную таблицу. Дополнительные результирующие наборы именуются путем добавления целочисленных значений к указанному имени таблицы (например, Table1, Table1, Table2 и т. д.). Приложения должны использовать осторожность при использовании имен столбцов и таблиц, чтобы убедиться, что конфликты с этими шаблонами именования не возникают.

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

Метод можно использовать Fill несколько раз в одном и том же DataTable. Если первичный ключ существует, входящие строки объединяются с соответствующими строками, которые уже существуют. Если первичный ключ не существует, входящие строки добавляются в .DataTable

Замечание

При обработке инструкций пакетного SQL, возвращающих несколько результатов, реализация FillFillSchema и поставщик данных .NET Framework извлекает сведения о схеме только для первого результата.

Применяется к

См. также раздел