OdbcCommandBuilder Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Genera automaticamente comandi di tabella singola utilizzati per risolvere le modifiche apportate a una classe DataSet con l'origine dati associata. La classe non può essere ereditata.
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
- Ereditarietà
- Ereditarietà
Esempio
L'esempio seguente usa OdbcCommand, insieme a OdbcDataAdapter e OdbcConnection, per selezionare le righe da un'origine dati. Nell'esempio viene passato un oggetto inizializzato DataSet, un stringa di connessione, una stringa di query che è un'istruzione SQL SELECT e una stringa che rappresenta il nome della tabella dell'origine dati. L'esempio crea quindi un oggetto 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
Commenti
Non OdbcDataAdapter genera automaticamente le istruzioni SQL necessarie per riconciliare le modifiche apportate a un DataSet oggetto associato all'origine dati. È tuttavia possibile creare un OdbcCommandBuilder oggetto che genera istruzioni SQL per gli aggiornamenti a tabella singola impostando la SelectCommand proprietà di OdbcDataAdapter. Genera OdbcCommandBuilder quindi eventuali istruzioni SQL aggiuntive non impostate.
La relazione tra un OdbcDataAdapter oggetto e il corrispondente OdbcCommandBuilder è sempre uno-a-uno. Per creare questa corrispondenza, impostare la OdbcDataAdapter proprietà dell'oggetto OdbcCommandBuilder . In questo modo l'oggetto OdbcCommandBuilder viene registrato come listener, che produce l'output degli RowUpdating eventi che influiscono su DataSet.
Per generare istruzioni INSERT, UPDATE o DELETE, OdbcCommandBuilder viene utilizzata la SelectCommand proprietà per recuperare un set di metadati richiesto. Se si modifica il valore di SelectCommand dopo il recupero dei metadati, ad esempio dopo il primo aggiornamento, è necessario chiamare il RefreshSchema metodo per aggiornare i metadati.
Nota
Se l'istruzione SELECT assegnata alla SelectCommand proprietà utilizza nomi di colonna con alias, le istruzioni INSERT, UPDATE e DELETE risultanti potrebbero non essere accurate o non corrette. Se il driver ODBC sottostante non può fornire il nome di colonna di base appropriato per il nome della colonna alias (utilizzando il valore SQL_DESC_BASE_COLUMN_NAME di SQLColAttribute
), è possibile usare il nome dell'alias nelle istruzioni INSERT, UPDATE e DELETE generate. Ad esempio, Microsoft ODBC Driver for Oracle restituisce il nome dell'alias come nome della colonna di base. Pertanto, le istruzioni INSERT, UPDATE e DELETE generate genererebbero errori.
Vengono OdbcCommandBuilder inoltre utilizzate le Connectionproprietà , CommandTimeoute Transaction a cui fa riferimento l'oggetto SelectCommand. L'utente deve chiamare RefreshSchema se una o più di queste proprietà vengono modificate o se il valore della SelectCommand proprietà stessa viene modificato. In caso contrario, le InsertCommandproprietà , UpdateCommande DeleteCommand mantengono i valori precedenti.
Se si chiama Dispose, l'oggetto OdbcCommandBuilder viene disassociato da OdbcDataAdaptere i comandi generati non vengono più usati.
Costruttori
OdbcCommandBuilder() |
Inizializza una nuova istanza della classe OdbcCommandBuilder. |
OdbcCommandBuilder(OdbcDataAdapter) |
Inizializza una nuova istanza della classe OdbcCommandBuilder con l'oggetto OdbcDataAdapter associato. |
Proprietà
CanRaiseEvents |
Ottiene un valore che indica se il componente può generare un evento. (Ereditato da Component) |
CatalogLocation |
Ottiene o imposta il valore CatalogLocation per un'istanza della classe DbCommandBuilder. (Ereditato da DbCommandBuilder) |
CatalogSeparator |
Ottiene o imposta una stringa usata come separatore di catalogo per un'istanza della classe DbCommandBuilder. (Ereditato da DbCommandBuilder) |
ConflictOption |
Specifica quale enumerazione ConflictOption deve essere utilizzata dalla classe DbCommandBuilder. (Ereditato da DbCommandBuilder) |
Container |
Ottiene l'oggetto IContainer che contiene Component. (Ereditato da Component) |
DataAdapter |
Ottiene o imposta un oggetto OdbcDataAdapter per il quale questo oggetto OdbcCommandBuilder genererà istruzioni SQL. |
DesignMode |
Ottiene un valore che indica se il Component si trova in modalità progettazione. (Ereditato da Component) |
Events |
Ottiene l'elenco dei gestori eventi allegati a questo Component. (Ereditato da Component) |
QuotePrefix |
Ottiene o imposta il carattere o i caratteri iniziali da usare quando si utilizzano oggetti di database, ad esempio tabelle o colonne, con nomi che contengono caratteri quali spazi o token riservati. |
QuotePrefix |
Ottiene o imposta il carattere o i caratteri iniziali da utilizzare quando si specificano oggetti di database, ad esempio tabelle o colonne, i cui nomi contengono caratteri quali spazi o token riservati. (Ereditato da DbCommandBuilder) |
QuoteSuffix |
Ottiene o imposta il carattere o i caratteri finali da usare quando si utilizzano oggetti di database, ad esempio tabelle o colonne, con nomi che contengono caratteri quali spazi o token riservati. |
QuoteSuffix |
Ottiene o imposta il carattere o i caratteri finali da utilizzare quando si specificano oggetti di database, ad esempio tabelle o colonne, i cui nomi contengono caratteri quali spazi o token riservati. (Ereditato da DbCommandBuilder) |
SchemaSeparator |
Ottiene o imposta il carattere da utilizzare come separatore tra l'identificatore di schema e altri identificatori. (Ereditato da DbCommandBuilder) |
SetAllValues |
Specifica se in un'istruzione di aggiornamento sono inclusi tutti i valori delle colonne o soltanto quelli modificati. (Ereditato da DbCommandBuilder) |
Site |
Ottiene o imposta l'oggetto ISite di Component. (Ereditato da Component) |
Metodi
ApplyParameterInfo(DbParameter, DataRow, StatementType, Boolean) |
Attiva l'implementazione del provider per la classe DbCommandBuilder per consentire la gestione di proprietà aggiuntive dei parametri. (Ereditato da DbCommandBuilder) |
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. (Ereditato da MarshalByRefObject) |
DeriveParameters(OdbcCommand) |
Recupera le informazioni sui parametri dalla stored procedure specificata nella classe OdbcCommand e compila l'insieme Parameters dell'oggetto OdbcCommand specificato. |
Dispose() |
Rilascia tutte le risorse usate da Component. (Ereditato da Component) |
Dispose(Boolean) |
Rilascia le risorse non gestite usate da DbCommandBuilder e, facoltativamente, le risorse gestite. (Ereditato da DbCommandBuilder) |
Dispose(Boolean) |
Rilascia le risorse non gestite usate da Component e, facoltativamente, le risorse gestite. (Ereditato da Component) |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetDeleteCommand() |
Ottiene l'oggetto OdbcCommand generato automaticamente, richiesto per eseguire le operazioni di eliminazione nell'origine dati. |
GetDeleteCommand(Boolean) |
Ottiene l'oggetto OdbcCommand generato automaticamente, richiesto per eseguire le operazioni di eliminazione nell'origine dati. |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetInsertCommand() |
Ottiene l'oggetto OdbcCommand generato automaticamente, richiesto per eseguire le operazioni di inserimento nell'origine dati. |
GetInsertCommand(Boolean) |
Ottiene l'oggetto OdbcCommand generato automaticamente, richiesto per eseguire le operazioni di inserimento nell'origine dati. |
GetLifetimeService() |
Obsoleti.
Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza. (Ereditato da MarshalByRefObject) |
GetParameterName(Int32) |
Restituisce il nome del parametro specificato nel formato . |
GetParameterName(String) |
Restituisce il nome completo del parametro, dato il suo nome parziale. (Ereditato da DbCommandBuilder) |
GetParameterPlaceholder(Int32) |
Restituisce il segnaposto del parametro nell'istruzione SQL associata. (Ereditato da DbCommandBuilder) |
GetSchemaTable(DbCommand) |
Restituisce la tabella dello schema della classe DbCommandBuilder. (Ereditato da DbCommandBuilder) |
GetService(Type) |
Consente di restituire un oggetto che rappresenta un servizio fornito da Component o dal relativo Container. (Ereditato da Component) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
GetUpdateCommand() |
Ottiene l'oggetto OdbcCommand generato automaticamente richiesto per eseguire le operazioni di aggiornamento nell'origine dati. |
GetUpdateCommand(Boolean) |
Ottiene l'oggetto OdbcCommand generato automaticamente richiesto per eseguire le operazioni di aggiornamento nell'origine dati. |
InitializeCommand(DbCommand) |
Reimposta le proprietà CommandTimeout, Transaction, CommandType e UpdateRowSource sul valore DbCommand. (Ereditato da DbCommandBuilder) |
InitializeLifetimeService() |
Obsoleti.
Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza. (Ereditato da MarshalByRefObject) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
MemberwiseClone(Boolean) |
Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente. (Ereditato da MarshalByRefObject) |
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. Ciò implica il sottoporre a escape in modo corretto eventuali virgolette nell'identificatore. |
QuoteIdentifier(String) |
Un identificatore senza virgolette con la lettera maiuscola o minuscola corretta per il catalogo, restituisce il form con virgolette corretto dell'identificatore. Ciò implica il sottoporre a escape in modo corretto eventuali virgolette nell'identificatore. |
RefreshSchema() |
Elimina i comandi associati all'oggetto OdbcCommandBuilder. |
RefreshSchema() |
Elimina i comandi associati all'oggetto DbCommandBuilder. (Ereditato da DbCommandBuilder) |
RowUpdatingHandler(RowUpdatingEventArgs) |
Aggiunge un gestore eventi per l'evento RowUpdating. (Ereditato da DbCommandBuilder) |
SetRowUpdatingHandler(DbDataAdapter) |
Registra l'oggetto DbCommandBuilder per gestire l'evento RowUpdating per un oggetto DbDataAdapter. (Ereditato da DbCommandBuilder) |
ToString() |
Restituisce un oggetto String che contiene il nome dell'eventuale oggetto Component. Questo metodo non deve essere sottoposto a override. (Ereditato da Component) |
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. |
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. |
Eventi
Disposed |
Si verifica quando il componente viene eliminato da una chiamata al metodo Dispose(). (Ereditato da Component) |