SqlDataAdapter Classe

Definição

Representa um conjunto de comandos de dados e uma ligação à base de dados que são usados para preencher o DataSet e atualizar uma base de dados SQL Server. Esta classe não pode ser herdada.

public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable, System::Data::IDbDataAdapter
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable, System.Data.IDbDataAdapter
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable
type SqlDataAdapter = class
    inherit DbDataAdapter
    interface IDbDataAdapter
    interface IDataAdapter
    interface ICloneable
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable, IDbDataAdapter
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable
Herança
Implementações

Exemplos

O exemplo seguinte usa , SqlCommandSqlDataAdapter, e SqlConnection para selecionar registos de uma base de dados e preencher a DataSet com as linhas selecionadas. O preenchimento DataSet é então devolvido. Para isso, o método recebe uma DataSet inicializada, uma cadeia de ligação e uma cadeia de consulta que é uma instrução Transact-SQL SELECT.

private static DataSet SelectRows(DataSet dataset,
    string connectionString,string queryString)
{
    using (SqlConnection connection =
        new SqlConnection(connectionString))
    {
        SqlDataAdapter adapter = new SqlDataAdapter();
        adapter.SelectCommand = new SqlCommand(
            queryString, connection);
        adapter.Fill(dataset);
        return dataset;
    }
}
Public Function SelectRows( _
    ByVal dataSet As DataSet, ByVal connectionString As String, _
    ByVal queryString As String) As DataSet

    Using connection As New SqlConnection(connectionString)
        Dim adapter As New SqlDataAdapter()
        adapter.SelectCommand = New SqlCommand( _
            queryString, connection)
        adapter.Fill(dataSet)
        Return dataSet
    End Using
End Function

Observações

O SqlDataAdapter serve como ponte entre um DataSet e SQL Server para recuperar e guardar dados. O SqlDataAdapter fornece esta ponte mapeando Fill, que altera os dados no DataSet para corresponder aos dados da fonte de dados, e Update, que altera os dados na fonte de dados para corresponder aos dados do DataSet, usando as instruções Transact-SQL apropriadas contra a fonte de dados. A atualização é feita por linhas. Para cada linha inserida, modificada e eliminada, o Update método determina o tipo de alteração que foi realizada nela (Insert, Update, ou Delete). Dependendo do tipo de alteração, o Insert, Update, ou Delete modelo de comando é executado para propagar a linha modificada para a fonte de dados. Quando preenche SqlDataAdapter um DataSet, cria-se as tabelas e colunas necessárias para os dados devolvidos, caso ainda não existam. No entanto, a informação da chave primária não é incluída no esquema criado implicitamente, a menos que a MissingSchemaAction propriedade esteja definida para AddWithKey. Também pode pedir para SqlDataAdapter criar o esquema do DataSet, incluindo a informação da chave primária, antes de o preencher com dados usando FillSchema. Para mais informações, consulte Adicionar Restrições Existentes a um DataSet.

SqlDataAdapter é usado em conjunto com SqlConnection e SqlCommand para aumentar o desempenho ao ligar a uma base de dados SQL Server.

Note

Se você estiver usando procedimentos armazenados do SQL Server para editar ou excluir dados usando um DataAdapter, certifique-se de não usar SET NOCOUNT ON na definição de procedimento armazenado. Isso faz com que a contagem de linhas afetadas retornada seja zero, o que o DataAdapter interpreta como um conflito de simultaneidade. Neste caso, um DBConcurrencyException será lançado.

Inclui SqlDataAdapter também as SelectCommandpropriedades , InsertCommand, DeleteCommand, UpdateCommand, e TableMappings para facilitar o carregamento e atualização dos dados.

Quando uma instância de SqlDataAdapter é criada, as propriedades de leitura/escrita são definidas para valores iniciais. Para obter uma lista desses valores, consulte o SqlDataAdapter construtor.

Os InsertCommand, DeleteCommand, e UpdateCommand são modelos genéricos que são automaticamente preenchidos com valores individuais de cada linha modificada através do mecanismo de parâmetros.

Para cada coluna que propaga para a fonte de dados em Update, um parâmetro deve ser adicionado ao InsertCommand, UpdateCommand, ou DeleteCommand. A SourceColumn propriedade do DbParameter objeto deve ser definida para o nome da coluna. Esta configuração indica que o valor do parâmetro não é definido manualmente, mas é retirado da coluna específica na linha atualmente processada.

Note

An InvalidOperationException ocorrerá se o Fill método for chamado e a tabela contiver um tipo definido pelo utilizador que não está disponível no computador cliente. Para mais informações, consulte Tipos CLR Definidos pelo Usuário.

Construtores

Name Description
SqlDataAdapter()

Inicializa uma nova instância da SqlDataAdapter classe.

SqlDataAdapter(SqlCommand)

Inicializa uma nova instância da SqlDataAdapter classe com o especificado SqlCommand como a SelectCommand propriedade.

SqlDataAdapter(String, SqlConnection)

Inicializa uma nova instância da SqlDataAdapter classe com um SelectCommand e um SqlConnection objeto.

SqlDataAdapter(String, String)

Inicializa uma nova instância da classe SqlDataAdapter com um SelectCommand e um cadeia de ligação.

Campos

Name Description
DefaultSourceTableName

O nome padrão usado pelo DataAdapter objeto para mapeamentos de tabelas.

(Herdado de DbDataAdapter)

Propriedades

Name Description
AcceptChangesDuringFill

Recebe ou define um valor que indica se AcceptChanges() é chamado em a DataRow depois de ser adicionado a durante DataTable qualquer das operações de Preenchimento .

(Herdado de DataAdapter)
AcceptChangesDuringUpdate

Obtém ou define se AcceptChanges() é chamado durante um Update(DataSet).

(Herdado de DataAdapter)
CanRaiseEvents

Obtém um valor que indica se o componente pode gerar um evento.

(Herdado de Component)
Container

Obtém o IContainer que contém o Component.

(Herdado de Component)
ContinueUpdateOnError

Recebe ou define um valor que especifica se deve gerar uma exceção quando é encontrado um erro durante uma atualização de linha.

(Herdado de DataAdapter)
DeleteCommand

Obtém ou define uma instrução Transact-SQL ou procedimento armazenado para eliminar registos do conjunto de dados.

DesignMode

Obtém um valor que indica se o Component está atualmente em modo de design.

(Herdado de Component)
Events

Obtém a lista de gestores de eventos que estão ligados a isto Component.

(Herdado de Component)
FillCommandBehavior

Obtém ou define o comportamento do comando usado para preencher o adaptador de dados.

(Herdado de DbDataAdapter)
FillLoadOption

Obtém ou define o LoadOption que determina como o adaptador preenche o DataTable a partir do DbDataReader.

(Herdado de DataAdapter)
InsertCommand

Obtém ou define uma instrução Transact-SQL ou procedimento armazenado para inserir novos registos na fonte de dados.

MissingMappingAction

Determina a ação a tomar quando os dados recebidos não têm uma tabela ou coluna correspondente.

(Herdado de DataAdapter)
MissingSchemaAction

Determina a ação a tomar quando o esquema existente DataSet não corresponde aos dados recebidos.

(Herdado de DataAdapter)
ReturnProviderSpecificTypes

Obtém ou define se o Fill método deve devolver valores específicos do fornecedor ou valores comuns compatíveis com CLS.

(Herdado de DataAdapter)
SelectCommand

Obtém ou define uma instrução Transact-SQL ou procedimento armazenado usado para selecionar registos na fonte de dados.

Site

Obtém ou define o ISite do Component.

(Herdado de Component)
TableMappings

Obtém uma coleção que fornece o mapeamento primário entre uma tabela de origem e um DataTable.

(Herdado de DataAdapter)
UpdateBatchSize

Obtém ou define o número de linhas que são processadas em cada ida e volta ao servidor.

UpdateCommand

Obtém ou define uma instrução Transact-SQL ou procedimento armazenado usado para atualizar registos na fonte de dados.

Métodos

Name Description
AddToBatch(IDbCommand)

Adiciona A IDbCommand ao lote atual.

(Herdado de DbDataAdapter)
ClearBatch()

Remove todos IDbCommand os objetos do lote.

(Herdado de DbDataAdapter)
CloneInternals()
Obsoleto.
Obsoleto.
Obsoleto.

Cria uma cópia desta instância de DataAdapter.

(Herdado de DataAdapter)
CreateObjRef(Type)

Cria um objeto que contém toda a informação relevante necessária para gerar um proxy usado para comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
CreateRowUpdatedEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

Inicializa uma nova instância da RowUpdatedEventArgs classe.

(Herdado de DbDataAdapter)
CreateRowUpdatingEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

Inicializa uma nova instância da RowUpdatingEventArgs classe.

(Herdado de DbDataAdapter)
CreateTableMappings()

Cria um novo DataTableMappingCollection.

(Herdado de DataAdapter)
Dispose()

Liberta todos os recursos utilizados pelo Component.

(Herdado de Component)
Dispose(Boolean)

Liberta os recursos não geridos usados pelo DbDataAdapter e opcionalmente liberta os recursos geridos.

(Herdado de DbDataAdapter)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
ExecuteBatch()

Executa o lote atual.

(Herdado de DbDataAdapter)
Fill(DataSet, Int32, Int32, String, IDbCommand, CommandBehavior)

Adiciona ou atualiza linhas num intervalo especificado em para DataSet corresponder às da fonte de dados usando os DataSet nomes das tabelas de origem, cadeia de comandos e comportamento de comandos.

(Herdado de DbDataAdapter)
Fill(DataSet, Int32, Int32, String)

Adiciona ou atualiza linhas num intervalo especificado no DataSet para corresponder às da fonte de dados usando os DataSet nomes e DataTable .

(Herdado de DbDataAdapter)
Fill(DataSet, String, IDataReader, Int32, Int32)

Adiciona ou atualiza linhas num intervalo especificado em para DataSet corresponder às da fonte de dados usando , DataSetDataTable, e IDataReader nomes.

(Herdado de DbDataAdapter)
Fill(DataSet, String)

Adiciona ou atualiza linhas em para DataSet corresponder às da fonte de dados usando os DataSet nomes e DataTable .

(Herdado de DbDataAdapter)
Fill(DataSet)

Adiciona ou atualiza linhas no DataSet.

(Herdado de DbDataAdapter)
Fill(DataTable, IDataReader)

Adiciona ou atualiza linhas em a DataTable para corresponder às da fonte de dados usando os nomes especificados DataTableIDataReader .

(Herdado de DbDataAdapter)
Fill(DataTable, IDbCommand, CommandBehavior)

Adiciona ou atualiza linhas em a DataTable para corresponder às da fonte de dados usando o especificado DataTable, IDbCommand e CommandBehavior.

(Herdado de DbDataAdapter)
Fill(DataTable)

Adiciona ou atualiza linhas num intervalo especificado no DataSet para corresponder às da fonte de dados usando o DataTable nome.

(Herdado de DbDataAdapter)
Fill(DataTable[], IDataReader, Int32, Int32)

Adiciona ou atualiza linhas num intervalo especificado na coleção de DataTable objetos para corresponder às da fonte de dados.

(Herdado de DataAdapter)
Fill(DataTable[], Int32, Int32, IDbCommand, CommandBehavior)

Adiciona ou atualiza linhas num intervalo especificado no DataSet para corresponder às da fonte de dados usando os DataSet nomes e DataTable .

(Herdado de DbDataAdapter)
Fill(Int32, Int32, DataTable[])

Adiciona ou atualiza linhas em um ou mais DataTable objetos para corresponder às da fonte de dados a partir do registo especificado e recuperando até ao número máximo de registos especificado.

(Herdado de DbDataAdapter)
FillSchema(DataSet, SchemaType, IDbCommand, String, CommandBehavior)

Adiciona a DataTable ao especificado DataSet e configura o esquema para corresponder ao da fonte de dados com base no especificado SchemaType.

(Herdado de DbDataAdapter)
FillSchema(DataSet, SchemaType, String, IDataReader)

Adiciona a DataTable ao especificado DataSet.

(Herdado de DataAdapter)
FillSchema(DataSet, SchemaType, String)

Adiciona a DataTable ao especificado DataSet e configura o esquema para corresponder ao da fonte de dados com base no especificado SchemaType e DataTable.

(Herdado de DbDataAdapter)
FillSchema(DataSet, SchemaType)

Adiciona uma DataTable "Tabela" nomeada ao especificado DataSet e configura o esquema para corresponder ao da fonte de dados com base no especificado SchemaType.

(Herdado de DbDataAdapter)
FillSchema(DataTable, SchemaType, IDataReader)

Adiciona a DataTable ao especificado DataSet.

(Herdado de DataAdapter)
FillSchema(DataTable, SchemaType, IDbCommand, CommandBehavior)

Configura o esquema do especificado DataTable com base no especificado SchemaType, cadeia de comandos e CommandBehavior valores.

(Herdado de DbDataAdapter)
FillSchema(DataTable, SchemaType)

Configura o esquema do especificado DataTable com base no especificado SchemaType.

(Herdado de DbDataAdapter)
GetBatchedParameter(Int32, Int32)

Retorna a IDataParameter de um dos comandos do lote atual.

(Herdado de DbDataAdapter)
GetBatchedRecordsAffected(Int32, Int32, Exception)

Devolve informações sobre uma tentativa individual de atualização dentro de uma atualização em lote maior.

(Herdado de DbDataAdapter)
GetFillParameters()

Obtém os parâmetros definidos pelo utilizador ao executar uma instrução SQL SELECT.

(Herdado de DbDataAdapter)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetLifetimeService()

Recupera o objeto de serviço de tempo de vida atual que controla a política de vida útil neste caso.

(Herdado de MarshalByRefObject)
GetService(Type)

Devolve um objeto que representa um serviço fornecido pelo Component ou pelo seu Container.

(Herdado de Component)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
HasTableMappings()

Indica se um DataTableMappingCollection foi criado.

(Herdado de DataAdapter)
InitializeBatching()

Inicializa o agrupamento para o DbDataAdapter.

(Herdado de DbDataAdapter)
InitializeLifetimeService()

Obtém-se um objeto de serviço vitalício para controlar a apólice vitalícia neste caso.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto atual MarshalByRefObject .

(Herdado de MarshalByRefObject)
OnFillError(FillErrorEventArgs)

Eleva o FillError evento.

(Herdado de DbDataAdapter)
OnRowUpdated(RowUpdatedEventArgs)

Levanta o evento RowUpdated de um fornecedor de dados .NET.

(Herdado de DbDataAdapter)
OnRowUpdating(RowUpdatingEventArgs)

Levanta o evento RowUpdating de um fornecedor de dados .NET.

(Herdado de DbDataAdapter)
ResetFillLoadOption()

Reinicia FillLoadOption para o seu estado padrão e causa Fill(DataSet) honrar AcceptChangesDuringFill.

(Herdado de DataAdapter)
ShouldSerializeAcceptChangesDuringFill()

Determina se a AcceptChangesDuringFill propriedade deve ser mantida.

(Herdado de DataAdapter)
ShouldSerializeFillLoadOption()

Determina se a FillLoadOption propriedade deve ser mantida.

(Herdado de DataAdapter)
ShouldSerializeTableMappings()

Determina se um ou mais DataTableMapping objetos existem e se devem ser mantidos.

(Herdado de DataAdapter)
TerminateBatching()

Termina o agrupamento para o DbDataAdapter.

(Herdado de DbDataAdapter)
ToString()

Devolve a String contendo o nome do Component, se existir. Este método não deve ser ultrapassado.

(Herdado de Component)
Update(DataRow[], DataTableMapping)

Atualiza os valores na base de dados executando as respetivas instruções INSERT, UPDATE ou DELETE para cada linha inserida, atualizada ou eliminada no array especificado de DataRow objetos.

(Herdado de DbDataAdapter)
Update(DataRow[])

Atualiza os valores na base de dados executando as respetivas instruções INSERT, UPDATE ou DELETE para cada linha inserida, atualizada ou eliminada no array especificado no DataSet.

(Herdado de DbDataAdapter)
Update(DataSet, String)

Atualiza os valores na base de dados executando as respetivas instruções INSERT, UPDATE ou DELETE para cada linha inserida, atualizada ou eliminada com DataSet o nome especificado DataTable .

(Herdado de DbDataAdapter)
Update(DataSet)

Atualiza os valores na base de dados executando as respetivas instruções INSERT, UPDATE ou DELETE para cada linha inserida, atualizada ou eliminada na linha especificada DataSet.

(Herdado de DbDataAdapter)
Update(DataTable)

Atualiza os valores na base de dados executando as respetivas instruções INSERT, UPDATE ou DELETE para cada linha inserida, atualizada ou eliminada na linha especificada DataTable.

(Herdado de DbDataAdapter)

evento

Name Description
Disposed

Ocorre quando o componente é eliminado por uma chamada ao Dispose() método.

(Herdado de Component)
FillError

Devolvido quando ocorre um erro durante uma operação de preenchimento.

(Herdado de DbDataAdapter)
RowUpdated

Ocorre durante Update(DataSet) a execução de um comando contra a fonte de dados. A tentativa de atualização é feita, por isso o evento dispara.

RowUpdating

Ocorre antes Update(DataSet) de um comando ser executado contra a fonte de dados. A tentativa de atualização é feita, por isso o evento dispara.

Implementações de Interface Explícita

Name Description
ICloneable.Clone()

Para uma descrição deste elemento, veja Clone().

IDataAdapter.TableMappings

Obtém uma coleção que indica como uma tabela de origem é mapeada para uma tabela de conjuntos de dados.

(Herdado de DataAdapter)
IDbDataAdapter.DeleteCommand

Para uma descrição deste elemento, veja DeleteCommand.

IDbDataAdapter.InsertCommand

Para uma descrição deste elemento, veja InsertCommand.

IDbDataAdapter.SelectCommand

Para uma descrição deste elemento, veja SelectCommand.

IDbDataAdapter.UpdateCommand

Para uma descrição deste elemento, veja UpdateCommand.

Aplica-se a

Ver também