OdbcCommandBuilder Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Gera automaticamente os comandos de tabela única que são usados para reconciliar as alterações feitas em um DataSet com a fonte de dados associada. Essa classe não pode ser herdada.
public ref class OdbcCommandBuilder sealed : System::Data::Common::DbCommandBuilder
public ref class OdbcCommandBuilder sealed : System::ComponentModel::Component
public sealed class OdbcCommandBuilder : System.Data.Common.DbCommandBuilder
public sealed class OdbcCommandBuilder : System.ComponentModel.Component
type OdbcCommandBuilder = class
inherit DbCommandBuilder
type OdbcCommandBuilder = class
inherit Component
Public NotInheritable Class OdbcCommandBuilder
Inherits DbCommandBuilder
Public NotInheritable Class OdbcCommandBuilder
Inherits Component
- Herança
- Herança
Exemplos
O exemplo a seguir usa OdbcCommand, junto com OdbcDataAdapter e OdbcConnection, para selecionar linhas de uma fonte de dados. O exemplo é passado um inicializadoDataSet, um cadeia de conexão, uma cadeia de caracteres de consulta que é uma instrução SQL SELECT e uma cadeia de caracteres que é o nome da tabela de fonte de dados. Em seguida, o exemplo cria um OdbcCommandBuilder.
public static DataSet SelectOdbcSrvRows(string connectionString,
string queryString, string tableName)
{
DataSet dataSet = new DataSet();
using (OdbcConnection connection = new OdbcConnection(connectionString))
{
OdbcDataAdapter adapter = new OdbcDataAdapter();
adapter.SelectCommand =
new OdbcCommand(queryString, connection);
OdbcCommandBuilder builder =
new OdbcCommandBuilder(adapter);
connection.Open();
adapter.Fill(dataSet, tableName);
//code to modify data in DataSet here
//Without the OdbcCommandBuilder this line would fail
adapter.Update(dataSet, tableName);
}
return dataSet;
}
Public Function SelectOdbcSrvRows( _
ByVal connectionString As String, ByVal queryString As String, _
ByVal tableName As String) As DataSet
Dim dataSet As New DataSet()
Using connection As New OdbcConnection(connectionString)
Dim adapter As New OdbcDataAdapter()
adapter.SelectCommand = _
New OdbcCommand(queryString, connection)
Dim builder As New OdbcCommandBuilder(adapter)
connection.Open()
adapter.Fill(dataSet, tableName)
' Code to modify data in DataSet here
' Without the OdbcCommandBuilder this line would fail.
adapter.Update(dataSet, tableName)
End Using
Return dataSet
End Function
Comentários
O OdbcDataAdapter não gera automaticamente as instruções SQL necessárias para reconciliar as alterações feitas em um DataSet associado à fonte de dados. No entanto, você pode criar um OdbcCommandBuilder objeto que gera instruções SQL para atualizações de tabela única definindo a SelectCommand propriedade do OdbcDataAdapter. Em OdbcCommandBuilder seguida, o gera quaisquer instruções SQL adicionais que você não definir.
A relação entre um OdbcDataAdapter e seu correspondente OdbcCommandBuilder é sempre um-para-um. Para criar essa correspondência, defina a OdbcDataAdapter propriedade do OdbcCommandBuilder objeto . Isso faz com que o OdbcCommandBuilder se registre como um ouvinte, o que produz a saída de RowUpdating eventos que afetam o DataSet.
Para gerar instruções INSERT, UPDATE ou DELETE, o OdbcCommandBuilder usa a SelectCommand propriedade para recuperar um conjunto necessário de metadados. Se você alterar o valor de após a recuperação dos SelectCommand metadados, como após a primeira atualização, deverá chamar o RefreshSchema método para atualizar os metadados.
Observação
Se a instrução SELECT atribuída à SelectCommand propriedade usar nomes de coluna com alias, as instruções INSERT, UPDATE e DELETE resultantes poderão ser imprecisas ou falhar. Se o driver ODBC subjacente não puder fornecer o nome de coluna base apropriado para o nome da coluna de alias (usando o valor SQL_DESC_BASE_COLUMN_NAME de ), o nome do SQLColAttribute
alias poderá ser usado nas instruções INSERT, UPDATE e DELETE geradas. Por exemplo, o Microsoft ODBC Driver for Oracle retorna o nome do alias como o nome da coluna base. Portanto, as instruções INSERT, UPDATE e DELETE geradas causariam erros.
O OdbcCommandBuilder também usa as Connectionpropriedades , CommandTimeoute Transaction referenciadas pelo SelectCommand. O usuário deve chamar RefreshSchema se uma ou mais dessas propriedades forem modificadas ou se o valor da SelectCommand propriedade em si for alterado. Caso contrário, as InsertCommandpropriedades , UpdateCommande DeleteCommand mantêm seus valores anteriores.
Se você chamar Dispose, o OdbcCommandBuilder será desassociado do OdbcDataAdaptere os comandos gerados não serão mais usados.
Construtores
OdbcCommandBuilder() |
Inicializa uma nova instância da classe OdbcCommandBuilder. |
OdbcCommandBuilder(OdbcDataAdapter) |
Inicializa uma nova instância da classe OdbcCommandBuilder com o objeto OdbcDataAdapter associado. |
Propriedades
CanRaiseEvents |
Obtém um valor que indica se o componente pode acionar um evento. (Herdado de Component) |
CatalogLocation |
Obtém ou define o CatalogLocation para uma instância da classe DbCommandBuilder. (Herdado de DbCommandBuilder) |
CatalogSeparator |
Obtém ou define uma cadeia de caracteres usada como o separador de catálogo para uma instância da classe DbCommandBuilder. (Herdado de DbCommandBuilder) |
ConflictOption |
Especifica qual ConflictOption deve ser usado pelo DbCommandBuilder. (Herdado de DbCommandBuilder) |
Container |
Obtém o IContainer que contém o Component. (Herdado de Component) |
DataAdapter |
Obtém ou define um objeto OdbcDataAdapter para o qual o objeto OdbcCommandBuilder gerará instruções SQL. |
DesignMode |
Obtém um valor que indica se o Component está no modo de design no momento. (Herdado de Component) |
Events |
Obtém a lista de manipuladores de eventos que estão anexados a este Component. (Herdado de Component) |
QuotePrefix |
Obtém ou define os caracteres iniciais a serem usados ao trabalhar com objetos de banco de dados (por exemplo, tabelas ou colunas) cujos nomes contenham caracteres, como espaços ou tokens reservados. |
QuotePrefix |
Obtém ou define o caractere ou caracteres iniciais a serem usados ao especificar os objetos de banco de dados (por exemplo, tabelas ou colunas) cujos nomes contêm caracteres como espaços ou tokens reservados. (Herdado de DbCommandBuilder) |
QuoteSuffix |
Obtém ou define os caracteres finais a serem usados ao trabalhar com objetos de banco de dados (por exemplo, tabelas ou colunas) cujos nomes contenham caracteres, como espaços ou tokens reservados. |
QuoteSuffix |
Obtém ou define o caractere ou caracteres finais a serem usados ao especificar os objetos de banco de dados (por exemplo, tabelas ou colunas) cujos nomes contêm caracteres como espaços ou tokens reservados. (Herdado de DbCommandBuilder) |
SchemaSeparator |
Obtém ou define o caractere a ser usado para o separador entre o identificador do esquema e de quaisquer outros identificadores. (Herdado de DbCommandBuilder) |
SetAllValues |
Especifica se todos os valores de coluna em uma declaração de atualização são incluídos ou apenas aqueles alterados. (Herdado de DbCommandBuilder) |
Site |
Obtém ou define o ISite do Component. (Herdado de Component) |
Métodos
ApplyParameterInfo(DbParameter, DataRow, StatementType, Boolean) |
Permite a implementação de provedor da classe DbCommandBuilder para manipular propriedades de parâmetro adicionais. (Herdado de DbCommandBuilder) |
CreateObjRef(Type) |
Cria um objeto que contém todas as informações relevantes necessárias para gerar um proxy usado para se comunicar com um objeto remoto. (Herdado de MarshalByRefObject) |
DeriveParameters(OdbcCommand) |
Recupera informações de parâmetro do procedimento armazenado especificado no OdbcCommand e popula a coleção Parameters do objeto OdbcCommand especificado. |
Dispose() |
Libera todos os recursos usados pelo Component. (Herdado de Component) |
Dispose(Boolean) |
Libera os recursos não gerenciados usados pelo DbCommandBuilder e opcionalmente libera os recursos gerenciados. (Herdado de DbCommandBuilder) |
Dispose(Boolean) |
Libera os recursos não gerenciados usados pelo Component e opcionalmente libera os recursos gerenciados. (Herdado de Component) |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetDeleteCommand() |
Obtém o objeto OdbcCommand gerado automaticamente necessário para realizar exclusões na fonte de dados. |
GetDeleteCommand(Boolean) |
Obtém o objeto OdbcCommand gerado automaticamente necessário para realizar exclusões na fonte de dados. |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetInsertCommand() |
Obtém o objeto OdbcCommand gerado automaticamente necessário para realizar inserções na fonte de dados. |
GetInsertCommand(Boolean) |
Obtém o objeto OdbcCommand gerado automaticamente necessário para realizar inserções na fonte de dados. |
GetLifetimeService() |
Obsoleto.
Recupera o objeto de serviço de tempo de vida atual que controla a política de ciclo de vida para esta instância. (Herdado de MarshalByRefObject) |
GetParameterName(Int32) |
Retorna o nome do parâmetro especificado no formato de |
GetParameterName(String) |
Retorna o nome completo do parâmetro, considerando o nome parcial do parâmetro. (Herdado de DbCommandBuilder) |
GetParameterPlaceholder(Int32) |
Retorna o espaço reservado para o parâmetro na instrução SQL associada. (Herdado de DbCommandBuilder) |
GetSchemaTable(DbCommand) |
Retorna a tabela de esquema para o DbCommandBuilder. (Herdado de DbCommandBuilder) |
GetService(Type) |
Retorna 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) |
GetUpdateCommand() |
Obtém o objeto OdbcCommand gerado automaticamente necessário para realizar atualizações na fonte de dados. |
GetUpdateCommand(Boolean) |
Obtém o objeto OdbcCommand gerado automaticamente necessário para realizar atualizações na fonte de dados. |
InitializeCommand(DbCommand) |
Redefine as propriedades CommandTimeout, Transaction, CommandType e UpdateRowSource no DbCommand. (Herdado de DbCommandBuilder) |
InitializeLifetimeService() |
Obsoleto.
Obtém um objeto de serviço de tempo de vida para controlar a política de tempo de vida para essa instância. (Herdado de MarshalByRefObject) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
MemberwiseClone(Boolean) |
Cria uma cópia superficial do objeto MarshalByRefObject atual. (Herdado de MarshalByRefObject) |
QuoteIdentifier(String, OdbcConnection) |
Dado um identificador sem aspas no caso de catálogo correto, retorna a forma entre aspas correta desse identificador. Isso inclui o uso da sequência de escape correta de quaisquer aspas inseridas no identificador. |
QuoteIdentifier(String) |
Dado um identificador sem aspas no caso de catálogo correto, retorna a forma entre aspas correta desse identificador. Isso inclui o uso da sequência de escape correta de quaisquer aspas inseridas no identificador. |
RefreshSchema() |
Limpa os comandos associados a este OdbcCommandBuilder. |
RefreshSchema() |
Limpa os comandos associados a este DbCommandBuilder. (Herdado de DbCommandBuilder) |
RowUpdatingHandler(RowUpdatingEventArgs) |
Adiciona um manipulador de eventos para o evento RowUpdating. (Herdado de DbCommandBuilder) |
SetRowUpdatingHandler(DbDataAdapter) |
Registra o DbCommandBuilder para lidar com o evento RowUpdating para um DbDataAdapter. (Herdado de DbCommandBuilder) |
ToString() |
Retorna um String que contém o nome do Component, se houver. Esse método não deve ser substituído. (Herdado de Component) |
UnquoteIdentifier(String, OdbcConnection) |
Dado um identificador entre aspas, retorna a forma sem aspas correta desse identificador, incluindo desfazer corretamente o escape de quaisquer aspas inseridas no identificador. |
UnquoteIdentifier(String) |
Dado um identificador entre aspas, retorna a forma sem aspas correta desse identificador, incluindo desfazer corretamente o escape de quaisquer aspas inseridas no identificador. |
Eventos
Disposed |
Ocorre quando o componente é disposto por uma chamada ao método Dispose(). (Herdado de Component) |