DataAdapter.Fill Método

Definição

Adiciona ou atualiza linhas no DataSet para correspondência na fonte de dados.Adds or refreshes rows in the DataSet to match those in the data source.

Sobrecargas

Fill(DataSet)

Adiciona ou atualiza linhas no DataSet para correspondência na fonte de dados.Adds or refreshes rows in the DataSet to match those in the data source.

Fill(DataTable, IDataReader)

Adiciona ou atualiza linhas no DataTable para corresponder àquelas na fonte de dados usando o nome DataTable e o IDataReader especificado.Adds or refreshes rows in the DataTable to match those in the data source using the DataTable name and the specified IDataReader.

Fill(DataTable[], IDataReader, Int32, Int32)

Adiciona ou atualiza as linhas em um intervalo especificado na coleção de objetos DataTable para corresponder àquelas na fonte de dados.Adds or refreshes rows in a specified range in the collection of DataTable objects to match those in the data source.

Fill(DataSet, String, IDataReader, Int32, Int32)

Adiciona ou atualiza linhas em um intervalo especificado no DataSet para corresponder àquelas na fonte de dados usando os nomes DataSet e DataTable.Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataSet and DataTable names.

Fill(DataSet)

Adiciona ou atualiza linhas no DataSet para correspondência na fonte de dados.Adds or refreshes rows in the DataSet to match those in the data source.

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

Parâmetros

dataSet
DataSet

Um DataSet a ser preenchido com registros e, se necessário, esquema.A DataSet to fill with records and, if necessary, schema.

Retornos

Int32

O número de linhas adicionadas com êxito a ou atualizadas no DataSet.The number of rows successfully added to or refreshed in the DataSet. Isso não inclui linhas afetadas por instruções que não retornam linhas.This does not include rows affected by statements that do not return rows.

Implementações

Comentários

O Fill método recupera linhas da fonte de dados usando a instrução SELECT especificada por uma SelectCommand propriedade associada.The Fill method retrieves rows from the data source using the SELECT statement specified by an associated SelectCommand property. O objeto de conexão associado à instrução SELECT deve ser válido, mas não precisa estar aberto.The connection object associated with the SELECT statement must be valid, but it does not need to be open. Se a conexão for fechada antes de Fill ser chamada, ela será aberta para recuperar dados e, em seguida, fechada.If the connection is closed before Fill is called, it is opened to retrieve data, then closed. Se a conexão for aberta antes de Fill ser chamada, ela permanecerá aberta.If the connection is open before Fill is called, it remains open.

FillEm seguida, a operação adiciona as linhas aos objetos de destino DataTable no DataSet , criando os DataTable objetos se eles ainda não existirem.The Fill operation then adds the rows to destination DataTable objects in the DataSet, creating the DataTable objects if they do not already exist. Ao criar DataTable objetos, a Fill operação normalmente cria apenas metadados de nome de coluna.When creating DataTable objects, the Fill operation normally creates only column name metadata. No entanto, caso a propriedade MissingSchemaAction seja definida como AddWithKey, as chaves primárias apropriadas e as restrições também são criadas.However, if the MissingSchemaAction property is set to AddWithKey, appropriate primary keys and constraints are also created.

Se o SelectCommand retornar os resultados de um OUTER JOIN, o DataAdapter não definirá um valor de PrimaryKey para oDataTable resultante.If the SelectCommand returns the results of an OUTER JOIN, the DataAdapter does not set a PrimaryKey value for the resulting DataTable. Você deve definir explicitamente a chave primária para garantir que as linhas duplicadas sejam resolvidas corretamente.You must explicitly define the primary key to ensure that duplicate rows are resolved correctly. Para obter mais informações, consulte definindo chaves primárias.For more information, see Defining Primary Keys.

Se o adaptador de dados encontrar colunas duplicadas ao popular um DataTable , ele gerará nomes para as colunas subsequentes, usando o padrão "ColumnName1", "ColumnName2", "columnname3" e assim por diante.If the data adapter encounters duplicate columns while populating a DataTable, it generates names for the subsequent columns, using the pattern "columnname1", "columnname2", "columnname3", and so on. Se os dados de entrada contiverem colunas não nomeadas, eles serão colocados no de DataSet acordo com o padrão "Coluna1", "Coluna2" e assim por diante.If the incoming data contains unnamed columns, they are placed in the DataSet according to the pattern "Column1", "Column2", and so on. Quando vários conjuntos de resultados são adicionados a DataSet cada conjunto de resultados são colocados em uma tabela separada.When multiple result sets are added to the DataSet each result set is placed in a separate table. Os conjuntos de resultados adicionais são nomeados adicionando-se valores integrais ao nome da tabela especificado (por exemplo, "Tabela", "Tabela1", "Tabela2" e assim por diante).Additional result sets are named by appending integral values to the specified table name (for example, "Table", "Table1", "Table2", and so on). Os aplicativos que usam nomes de coluna e tabela devem garantir que os conflitos com esses padrões de nomenclatura não ocorram.Applications using column and table names should ensure that conflicts with these naming patterns does not occur.

Quando a instrução SELECT usada para popular o DataSet retorna vários resultados, como instruções SQL do lote, se um dos resultados contiver um erro, todos os resultados subsequentes serão ignorados e não adicionados ao DataSet .When the SELECT statement used to populate the DataSet returns multiple results, such as a batch SQL statements, if one of the results contains an error, all subsequent results are skipped and not added to the DataSet.

Você pode usar o Fill método várias vezes no mesmo DataTable .You can use the Fill method multiple times on the same DataTable. Caso haja uma chave primária, as linhas de entrada são mescladas com linhas correspondentes já existentes.If a primary key exists, incoming rows are merged with matching rows that already exist. Caso não haja nenhuma chave primária, as linhas de entrada são acrescentadas ao DataTable.If no primary key exists, incoming rows are appended to the DataTable.

Observação

Ao manipular instruções SQL do lote que retornam vários resultados, a implementação do FillSchema para o .NET Framework provedor de dados para OLE DB recupera informações de esquema somente para o primeiro resultado.When handling batch SQL statements that return multiple results, the implementation of FillSchema for the .NET Framework Data Provider for OLE DB retrieves schema information for only the first result. Para recuperar informações de esquema para vários resultados, use Fill com o MissingSchemaAction conjunto para AddWithKey .To retrieve schema information for multiple results, use Fill with the MissingSchemaAction set to AddWithKey.

Confira também

Aplica-se a

Fill(DataTable, IDataReader)

Adiciona ou atualiza linhas no DataTable para corresponder àquelas na fonte de dados usando o nome DataTable e o IDataReader especificado.Adds or refreshes rows in the DataTable to match those in the data source using the DataTable name and the specified IDataReader.

protected:
 virtual int Fill(System::Data::DataTable ^ dataTable, System::Data::IDataReader ^ dataReader);
protected virtual int Fill (System.Data.DataTable dataTable, System.Data.IDataReader dataReader);
abstract member Fill : System.Data.DataTable * System.Data.IDataReader -> int
override this.Fill : System.Data.DataTable * System.Data.IDataReader -> int
Protected Overridable Function Fill (dataTable As DataTable, dataReader As IDataReader) As Integer

Parâmetros

dataTable
DataTable

Um DataTable para preencher com registros.A DataTable to fill with records.

dataReader
IDataReader

Uma instância de IDataReader.An instance of IDataReader.

Retornos

Int32

O número de linhas adicionadas com êxito a ou atualizadas no DataTable.The number of rows successfully added to or refreshed in the DataTable. Isso não inclui linhas afetadas por instruções que não retornam linhas.This does not include rows affected by statements that do not return rows.

Comentários

Consulte os comentários para DataAdapter.Fill(DataSet) obter informações adicionais.See the remarks for DataAdapter.Fill(DataSet) for additional information.

Aplica-se a

Fill(DataTable[], IDataReader, Int32, Int32)

Adiciona ou atualiza as linhas em um intervalo especificado na coleção de objetos DataTable para corresponder àquelas na fonte de dados.Adds or refreshes rows in a specified range in the collection of DataTable objects to match those in the data source.

protected:
 virtual int Fill(cli::array <System::Data::DataTable ^> ^ dataTables, System::Data::IDataReader ^ dataReader, int startRecord, int maxRecords);
protected virtual int Fill (System.Data.DataTable[] dataTables, System.Data.IDataReader dataReader, int startRecord, int maxRecords);
abstract member Fill : System.Data.DataTable[] * System.Data.IDataReader * int * int -> int
override this.Fill : System.Data.DataTable[] * System.Data.IDataReader * int * int -> int
Protected Overridable Function Fill (dataTables As DataTable(), dataReader As IDataReader, startRecord As Integer, maxRecords As Integer) As Integer

Parâmetros

dataTables
DataTable[]

Uma coleção de objetos DataTable a serem preenchidos com registros.A collection of DataTable objects to fill with records.

dataReader
IDataReader

Uma instância de IDataReader.An instance of IDataReader.

startRecord
Int32

O índice baseado em zero do registro inicial.The zero-based index of the starting record.

maxRecords
Int32

Um inteiro que indica o número máximo de registros.An integer indicating the maximum number of records.

Retornos

Int32

O número de linhas adicionadas com êxito a ou atualizadas no DataTable.The number of rows successfully added to or refreshed in the DataTable. Isso não inclui linhas afetadas por instruções que não retornam linhas.This does not include rows affected by statements that do not return rows.

Comentários

Consulte os comentários para System.Data.Common.DataAdapter.Fill(System.Data.DataSet) obter informações adicionais.See the remarks for System.Data.Common.DataAdapter.Fill(System.Data.DataSet) for additional information.

Aplica-se a

Fill(DataSet, String, IDataReader, Int32, Int32)

Adiciona ou atualiza linhas em um intervalo especificado no DataSet para corresponder àquelas na fonte de dados usando os nomes DataSet e DataTable.Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataSet and DataTable names.

protected:
 virtual int Fill(System::Data::DataSet ^ dataSet, System::String ^ srcTable, System::Data::IDataReader ^ dataReader, int startRecord, int maxRecords);
protected virtual int Fill (System.Data.DataSet dataSet, string srcTable, System.Data.IDataReader dataReader, int startRecord, int maxRecords);
abstract member Fill : System.Data.DataSet * string * System.Data.IDataReader * int * int -> int
override this.Fill : System.Data.DataSet * string * System.Data.IDataReader * int * int -> int
Protected Overridable Function Fill (dataSet As DataSet, srcTable As String, dataReader As IDataReader, startRecord As Integer, maxRecords As Integer) As Integer

Parâmetros

dataSet
DataSet

Um DataSet para preencher com registros.A DataSet to fill with records.

srcTable
String

Uma cadeia de caracteres que indica o nome da tabela de origem.A string indicating the name of the source table.

dataReader
IDataReader

Uma instância de IDataReader.An instance of IDataReader.

startRecord
Int32

O índice baseado em zero do registro inicial.The zero-based index of the starting record.

maxRecords
Int32

Um inteiro que indica o número máximo de registros.An integer indicating the maximum number of records.

Retornos

Int32

O número de linhas adicionadas com êxito a ou atualizadas no DataSet.The number of rows successfully added to or refreshed in the DataSet. Isso não inclui linhas afetadas por instruções que não retornam linhas.This does not include rows affected by statements that do not return rows.

Comentários

Consulte os comentários para System.Data.Common.DataAdapter.Fill(System.Data.DataSet) obter informações adicionais.See the remarks for System.Data.Common.DataAdapter.Fill(System.Data.DataSet) for additional information.

Aplica-se a