OdbcCommandBuilder OdbcCommandBuilder OdbcCommandBuilder OdbcCommandBuilder Class

Definizione

Genera automaticamente comandi di tabella singola utilizzati per risolvere le modifiche apportate a una classe DataSet con l'origine dati associata.Automatically generates single-table commands that are used to reconcile changes made to a DataSet with the associated data source. Questa classe non può essere ereditata.This class cannot be inherited.

public ref class OdbcCommandBuilder sealed : System::Data::Common::DbCommandBuilder
public sealed class OdbcCommandBuilder : System.Data.Common.DbCommandBuilder
type OdbcCommandBuilder = class
    inherit DbCommandBuilder
Public NotInheritable Class OdbcCommandBuilder
Inherits DbCommandBuilder
Ereditarietà

Esempi

L'esempio seguente usa OdbcCommand, in combinazione con OdbcDataAdapter e OdbcConnection, selezionare le righe da un'origine dati.The following example uses OdbcCommand, together with OdbcDataAdapter and OdbcConnection, to select rows from a data source. Nell'esempio viene passato un oggetto inizializzato DataSet, una stringa di connessione, una stringa di query che rappresenta un'istruzione SQL SELECT e una stringa che rappresenta il nome della tabella di origine dati.The example is passed an initialized DataSet, a connection string, a query string that is an SQL SELECT statement, and a string that is the name of the data source table. L'esempio crea quindi un OdbcCommandBuilder.The example then creates an 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 DataSet = New DataSet

    Using connection As New OdbcConnection(connectionString)
        Dim adapter As New OdbcDataAdapter()
        adapter.SelectCommand = _
            New OdbcCommand(queryString, connection)
        Dim builder As OdbcCommandBuilder = _
            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

Commenti

Il OdbcDataAdapter non genera automaticamente le istruzioni SQL necessarie per risolvere le modifiche apportate a un DataSet associato all'origine dati.The OdbcDataAdapter does not automatically generate the SQL statements required to reconcile changes made to a DataSet associated with the data source. Tuttavia, è possibile creare un OdbcCommandBuilder oggetto che genera istruzioni SQL per tabella singola aggiornamenti impostando la SelectCommand proprietà del OdbcDataAdapter.However, you can create an OdbcCommandBuilder object that generates SQL statements for single-table updates by setting the SelectCommand property of the OdbcDataAdapter. Il OdbcCommandBuilder genera quindi le istruzioni SQL aggiuntive che non si imposta.The OdbcCommandBuilder then generates any additional SQL statements that you do not set.

La relazione tra un OdbcDataAdapter e il corrispondente OdbcCommandBuilder è sempre uno a uno.The relationship between an OdbcDataAdapter and its corresponding OdbcCommandBuilder is always one-to-one. Per creare questa corrispondenza, si imposta la OdbcDataAdapter proprietà del OdbcCommandBuilder oggetto.To create this correspondence, you set the OdbcDataAdapter property of the OdbcCommandBuilder object. In questo modo, il OdbcCommandBuilder per registrarsi come un listener, che produce l'output di RowUpdating eventi che interessano il DataSet.This causes the OdbcCommandBuilder to register itself as a listener, which produces the output of RowUpdating events that affect the DataSet.

Per generare istruzioni INSERT, UPDATE o DELETE, il OdbcCommandBuilder utilizza il SelectCommand proprietà per recuperare un set di metadati richiesto.To generate INSERT, UPDATE, or DELETE statements, the OdbcCommandBuilder uses the SelectCommand property to retrieve a required set of metadata. Se si modifica il valore di SelectCommand dopo aver recuperato i metadati, ad esempio dopo il primo aggiornamento, è necessario quindi chiamare il RefreshSchema metodo per aggiornare i metadati.If you change the value of SelectCommand after the metadata has been retrieved, such as after the first update, you should then call the RefreshSchema method to update the metadata.

Nota

Se l'istruzione SELECT assegnato al SelectCommand proprietà Usa nomi di colonna con alias, risultante INSERT, UPDATE e istruzioni DELETE potrebbero non essere corrette o non riuscire.If the SELECT statement assigned to the SelectCommand property uses aliased column names, the resulting INSERT, UPDATE, and DELETE statements may be inaccurate or fail. Se il driver ODBC sottostante non è possibile specificare il nome di colonna di base appropriato per il nome della colonna alias (usando il valore SQL_DESC_BASE_COLUMN_NAME SQLColAttribute), il nome di alias può essere utilizzato nelle istruzioni INSERT, UPDATE e DELETE generate.If the underlying ODBC driver cannot provide the appropriate base column name for the alias column name (using the SQL_DESC_BASE_COLUMN_NAME value of SQLColAttribute), the alias name could be used in the generated INSERT, UPDATE, and DELETE statements. Ad esempio, il Driver ODBC di Microsoft per Oracle restituisce il nome di alias come il nome di colonna di base.For example, the Microsoft ODBC Driver for Oracle returns the alias name as the base column name. Le istruzioni INSERT, UPDATE e DELETE generate potrebbero pertanto provocare errori.Therefore, the generated INSERT, UPDATE, and DELETE statements would cause errors.

Il OdbcCommandBuilder Usa anche il Connection, CommandTimeout, e Transaction le proprietà a cui fanno riferimento le SelectCommand.The OdbcCommandBuilder also uses the Connection, CommandTimeout, and Transaction properties referenced by the SelectCommand. L'utente deve chiamare RefreshSchema se una o più di queste proprietà vengono modificate o se il valore della SelectCommand stessa proprietà viene modificato.The user should call RefreshSchema if one or more of these properties are modified, or if the value of the SelectCommand property itself is changed. In caso contrario, il InsertCommand, UpdateCommand, e DeleteCommand mantengono i valori precedenti.Otherwise the InsertCommand, UpdateCommand, and DeleteCommand properties retain their previous values.

Se si chiama Dispose, il OdbcCommandBuilder viene dissociato il OdbcDataAdapter, e i comandi generati non vengono più utilizzati.If you call Dispose, the OdbcCommandBuilder is disassociated from the OdbcDataAdapter, and the generated commands are no longer used.

Costruttori

OdbcCommandBuilder() OdbcCommandBuilder() OdbcCommandBuilder() OdbcCommandBuilder()

Inizializza una nuova istanza della classe OdbcCommandBuilder.Initializes a new instance of the OdbcCommandBuilder class.

OdbcCommandBuilder(OdbcDataAdapter) OdbcCommandBuilder(OdbcDataAdapter) OdbcCommandBuilder(OdbcDataAdapter) OdbcCommandBuilder(OdbcDataAdapter)

Inizializza una nuova istanza della classe OdbcCommandBuilder con l'oggetto OdbcDataAdapter associato.Initializes a new instance of the OdbcCommandBuilder class with the associated OdbcDataAdapter object.

Proprietà

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

Ottiene un valore che indica se il componente può generare un evento.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
Container Container Container Container

Ottiene il IContainer che contiene il Component.Gets the IContainer that contains the Component.

(Inherited from Component)
DataAdapter DataAdapter DataAdapter DataAdapter

Ottiene o imposta un oggetto OdbcDataAdapter per il quale questo oggetto OdbcCommandBuilder genererà istruzioni SQL.Gets or sets an OdbcDataAdapter object for which this OdbcCommandBuilder object will generate SQL statements.

DesignMode DesignMode DesignMode DesignMode

Ottiene un valore che indica se il Component si trova in modalità progettazione.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Events Events Events Events

Ottiene l'elenco dei gestori eventi allegati a questo Component.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
QuotePrefix QuotePrefix QuotePrefix QuotePrefix
QuoteSuffix QuoteSuffix QuoteSuffix QuoteSuffix
Site Site Site Site

Ottiene o imposta l'oggetto ISite di Component.Gets or sets the ISite of the Component.

(Inherited from Component)

Metodi

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Consente di creare un oggetto che contiene tutte le informazioni rilevanti necessarie per la generazione del proxy utilizzato per effettuare la comunicazione con un oggetto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
DeriveParameters(OdbcCommand) DeriveParameters(OdbcCommand) DeriveParameters(OdbcCommand) DeriveParameters(OdbcCommand)

Recupera le informazioni sui parametri dalla stored procedure specificata nella classe OdbcCommand e compila l'insieme Parameters dell'oggetto OdbcCommand specificato.Retrieves parameter information from the stored procedure specified in the OdbcCommand and populates the Parameters collection of the specified OdbcCommand object.

Dispose() Dispose() Dispose() Dispose()

Rilascia tutte le risorse usate da Component.Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Rilascia le risorse non gestite usate da Component e, facoltativamente, le risorse gestite.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Inherited from Component)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetDeleteCommand() GetDeleteCommand() GetDeleteCommand() GetDeleteCommand()

Ottiene l'oggetto OdbcCommand generato automaticamente, richiesto per eseguire le operazioni di eliminazione nell'origine dati.Gets the automatically generated OdbcCommand object required to perform deletions at the data source.

GetDeleteCommand(Boolean) GetDeleteCommand(Boolean) GetDeleteCommand(Boolean) GetDeleteCommand(Boolean)

Ottiene l'oggetto OdbcCommand generato automaticamente, richiesto per eseguire le operazioni di eliminazione nell'origine dati.Gets the automatically generated OdbcCommand object required to perform deletions at the data source.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetInsertCommand() GetInsertCommand() GetInsertCommand() GetInsertCommand()

Ottiene l'oggetto OdbcCommand generato automaticamente, richiesto per eseguire le operazioni di inserimento nell'origine dati.Gets the automatically generated OdbcCommand object required to perform insertions at the data source.

GetInsertCommand(Boolean) GetInsertCommand(Boolean) GetInsertCommand(Boolean) GetInsertCommand(Boolean)

Ottiene l'oggetto OdbcCommand generato automaticamente, richiesto per eseguire le operazioni di inserimento nell'origine dati.Gets the automatically generated OdbcCommand object required to perform insertions at the data source.

GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Consente di restituire un oggetto che rappresenta un servizio fornito da Component o dal relativo Container.Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
GetUpdateCommand() GetUpdateCommand() GetUpdateCommand() GetUpdateCommand()

Ottiene l'oggetto OdbcCommand generato automaticamente richiesto per eseguire le operazioni di aggiornamento nell'origine dati.Gets the automatically generated OdbcCommand object required to perform updates at the data source.

GetUpdateCommand(Boolean) GetUpdateCommand(Boolean) GetUpdateCommand(Boolean) GetUpdateCommand(Boolean)

Ottiene l'oggetto OdbcCommand generato automaticamente richiesto per eseguire le operazioni di aggiornamento nell'origine dati.Gets the automatically generated OdbcCommand object required to perform updates at the data source.

InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
QuoteIdentifier(String) QuoteIdentifier(String) QuoteIdentifier(String) QuoteIdentifier(String)

Un identificatore senza virgolette con la lettera maiuscola o minuscola corretta per il catalogo, restituisce il form con virgolette corretto dell'identificatore.Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier. Ciò implica il sottoporre a escape in modo corretto eventuali virgolette nell'identificatore.This includes correctly escaping any embedded quotes in the identifier.

QuoteIdentifier(String, OdbcConnection) QuoteIdentifier(String, OdbcConnection) QuoteIdentifier(String, OdbcConnection) QuoteIdentifier(String, OdbcConnection)

Un identificatore senza virgolette con la lettera maiuscola o minuscola corretta per il catalogo, restituisce il form con virgolette corretto dell'identificatore.Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier. Ciò implica il sottoporre a escape in modo corretto eventuali virgolette nell'identificatore.This includes correctly escaping any embedded quotes in the identifier.

RefreshSchema() RefreshSchema() RefreshSchema() RefreshSchema()
ToString() ToString() ToString() ToString()

Restituisce un oggetto String che contiene il nome dell'eventuale oggetto Component.Returns a String containing the name of the Component, if any. Questo metodo non deve essere sottoposto a override.This method should not be overridden.

(Inherited from Component)
UnquoteIdentifier(String) UnquoteIdentifier(String) UnquoteIdentifier(String) UnquoteIdentifier(String)

Dato un identificatore con virgolette, restituisce la forma senza virgolette corretta dell'identificatore, ripristinando correttamente la condizione precedente di virgolette eventualmente presenti nell'identificatore sottoposte a escape.Given a quoted identifier, returns the correct unquoted form of that identifier, including correctly unescaping any embedded quotes in the identifier.

UnquoteIdentifier(String, OdbcConnection) UnquoteIdentifier(String, OdbcConnection) UnquoteIdentifier(String, OdbcConnection) UnquoteIdentifier(String, OdbcConnection)

Dato un identificatore con virgolette, restituisce la forma senza virgolette corretta dell'identificatore, ripristinando correttamente la condizione precedente di virgolette eventualmente presenti nell'identificatore sottoposte a escape.Given a quoted identifier, returns the correct unquoted form of that identifier, including correctly unescaping any embedded quotes in the identifier.

Eventi

Disposed Disposed Disposed Disposed

Si verifica quando il componente viene eliminato da una chiamata al metodo Dispose().Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)

Si applica a

Vedi anche