OleDbConnection 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.
Rappresenta una connessione aperta a un'origine dati.
public ref class OleDbConnection sealed : System::ComponentModel::Component, ICloneable, IDisposable, System::Data::IDbConnection
public ref class OleDbConnection sealed : System::Data::Common::DbConnection, ICloneable, IDisposable
public sealed class OleDbConnection : System.ComponentModel.Component, ICloneable, IDisposable, System.Data.IDbConnection
public sealed class OleDbConnection : System.Data.Common.DbConnection, ICloneable, IDisposable
type OleDbConnection = class
inherit Component
interface ICloneable
interface IDbConnection
interface IDisposable
type OleDbConnection = class
inherit DbConnection
interface ICloneable
interface IDbConnection
interface IDisposable
Public NotInheritable Class OleDbConnection
Inherits Component
Implements ICloneable, IDbConnection, IDisposable
Public NotInheritable Class OleDbConnection
Inherits DbConnection
Implements ICloneable, IDisposable
- Ereditarietà
- Ereditarietà
- Implementazioni
Esempio
Nell'esempio seguente viene creato un oggetto OleDbCommand e un oggetto OleDbConnection. L'oggetto OleDbConnection viene aperto e impostato come per Connection .OleDbCommand L'esempio chiama ExecuteNonQuery e chiude la connessione. A tale scopo, ExecuteNonQuery viene passato un stringa di connessione e una stringa di query che è un'istruzione SQL INSERT.
public void InsertRow(string connectionString, string insertSQL)
{
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
// The insertSQL string contains a SQL statement that
// inserts a new row in the source table.
OleDbCommand command = new OleDbCommand(insertSQL);
// Set the Connection to the new OleDbConnection.
command.Connection = connection;
// Open the connection and execute the insert command.
try
{
connection.Open();
command.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
// The connection is automatically closed when the
// code exits the using block.
}
}
Public Sub InsertRow(ByVal connectionString As String, _
ByVal insertSQL As String)
Using connection As New OleDbConnection(connectionString)
' The insertSQL string contains a SQL statement that
' inserts a new row in the source table.
Dim command As New OleDbCommand(insertSQL)
' Set the Connection to the new OleDbConnection.
command.Connection = connection
' Open the connection and execute the insert command.
Try
connection.Open()
command.ExecuteNonQuery()
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try
' The connection is automatically closed when the
' code exits the Using block.
End Using
End Sub
Commenti
Un OleDbConnection oggetto rappresenta una connessione univoca a un'origine dati. Con un sistema di database client/server, equivale a una connessione di rete al server. A seconda della funzionalità supportata dal provider OLE DB nativo, alcuni metodi o proprietà di un OleDbConnection oggetto potrebbero non essere disponibili.
Quando si crea un'istanza di OleDbConnection, tutte le proprietà vengono impostate su valori iniziali. Per un elenco di questi valori, vedere il OleDbConnection costruttore.
È possibile aprire più datareader in un singolo OleDbConnectionoggetto . Se il provider OLE DB utilizzato non supporta più di un DataReader in una singola connessione, il provider apre in modo implicito una connessione aggiuntiva per ognuna.
Se l'oggetto esce dall'ambito OleDbConnection , non viene chiuso. Pertanto, è necessario chiudere in modo esplicito la connessione chiamando Close o Dispose oppure usando l'oggetto all'interno di un'istruzione OleDbConnectionUsing .
Note
Per distribuire applicazioni ad alte prestazioni, è necessario usare il pool di connessioni. Quando si usa .NET Framework provider di dati per OLE DB, non è necessario abilitare il pool di connessioni perché il provider gestisce automaticamente questa impostazione. Per altre informazioni su come usare il pool di connessioni con .NET Framework provider di dati per OLE DB, vedere OLE DB, ODBC e Oracle Connection Pooling.
Se un OleDbException irreversibile (ad esempio, un livello di gravità SQL Server pari o superiore a 20) viene generato dal metodo che esegue un OleDbCommand, il OleDbConnection potrebbe essere chiuso. Tuttavia, l'utente può riaprire la connessione e continuare.
Un'applicazione che crea un'istanza dell'oggetto OleDbConnection può richiedere a tutti i chiamanti diretti e indiretti di disporre di autorizzazioni sufficienti per il codice impostando richieste di sicurezza dichiarative o imperative. OleDbConnection rende richieste di sicurezza usando l'oggetto OleDbPermission . Gli utenti possono verificare che il codice disponga di autorizzazioni sufficienti usando l'oggetto OleDbPermissionAttribute . Gli utenti e gli amministratori possono anche usare il Caspol.exe (Strumento criteri di sicurezza dall'accesso di codice) per modificare i criteri di sicurezza a livello computer, utente e aziendale. Per altre informazioni, vedere Code Access Security and ADO.NET.
Per altre informazioni sulla gestione di messaggi informativi e di avviso dal server dati, vedere Eventi di connessione.
Note
L'oggetto non supporta l'impostazione OleDbConnection o il recupero di proprietà dinamiche specifiche di un provider OLE DB. Sono supportate esclusivamente le proprietà che possono essere passate nella stringa di connessione per il provider OLE DB.
Costruttori
| Nome | Descrizione |
|---|---|
| OleDbConnection() |
Inizializza una nuova istanza della classe OleDbConnection. |
| OleDbConnection(String) |
Inizializza una nuova istanza della OleDbConnection classe con la stringa di connessione specificata. |
Proprietà
| Nome | Descrizione |
|---|---|
| CanRaiseEvents |
Ottiene un valore che indica se il componente può generare un evento. (Ereditato da Component) |
| ConnectionString |
Ottiene o imposta la stringa utilizzata per aprire un database. |
| ConnectionTimeout |
Ottiene il tempo di attesa (in secondi) durante il tentativo di stabilire una connessione prima di terminare il tentativo e generare un errore. |
| Container |
Ottiene l'oggetto IContainer contenente l'oggetto Component. (Ereditato da Component) |
| Database |
Ottiene il nome del database corrente o del database da utilizzare dopo l'apertura di una connessione. |
| DataSource |
Ottiene il nome del server o il nome file dell'origine dati. |
| DbProviderFactory |
Ottiene l'oggetto per l'oggetto DbProviderFactoryDbConnection. (Ereditato da DbConnection) |
| DesignMode |
Ottiene un valore che indica se è Component attualmente in modalità progettazione. (Ereditato da Component) |
| Events |
Ottiene l'elenco dei gestori eventi associati a questo Componentoggetto . (Ereditato da Component) |
| Provider |
Ottiene il nome del provider OLE DB specificato nella clausola "Provider= " del stringa di connessione. |
| ServerVersion |
Ottiene una stringa contenente la versione del server a cui è connesso il client. |
| Site |
Ottiene o imposta il ISite del Component. (Ereditato da Component) |
| State |
Ottiene lo stato corrente della connessione. |
Metodi
| Nome | Descrizione |
|---|---|
| BeginDbTransaction(IsolationLevel) |
Quando sottoposto a override in una classe derivata, avvia una transazione di database. (Ereditato da DbConnection) |
| BeginTransaction() |
Avvia una transazione di database con il valore corrente IsolationLevel . |
| BeginTransaction(IsolationLevel) |
Avvia una transazione di database con il livello di isolamento specificato. |
| ChangeDatabase(String) |
Modifica il database corrente per un oggetto aperto OleDbConnection. |
| Close() |
Chiude la connessione all'origine dati. |
| CreateCommand() |
Crea e restituisce un OleDbCommand oggetto associato all'oggetto OleDbConnection. |
| CreateDbCommand() |
Quando sottoposto a override in una classe derivata, crea e restituisce un DbCommand oggetto associato alla connessione corrente. (Ereditato da DbConnection) |
| CreateObjRef(Type) |
Crea un oggetto che contiene tutte le informazioni pertinenti necessarie per generare un proxy utilizzato per comunicare con un oggetto remoto. (Ereditato da MarshalByRefObject) |
| Dispose() |
Rilascia tutte le risorse usate da Component. (Ereditato da Component) |
| Dispose(Boolean) |
Rilascia le risorse non gestite usate da Component e, facoltativamente, rilascia le risorse gestite. (Ereditato da Component) |
| EnlistDistributedTransaction(ITransaction) |
Integra la transazione specificata come transazione distribuita. |
| EnlistTransaction(Transaction) |
Integra la transazione specificata come transazione distribuita. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetLifetimeService() |
Recupera l'oggetto servizio di durata corrente che controlla i criteri di durata per questa istanza. (Ereditato da MarshalByRefObject) |
| GetOleDbSchemaTable(Guid, Object[]) |
Restituisce informazioni sullo schema da un'origine dati come indicato da un GUID e dopo l'applicazione delle restrizioni specificate. |
| GetSchema() |
Restituisce informazioni sullo schema per l'origine dati di questo OleDbConnectionoggetto . |
| GetSchema(String, String[]) |
Restituisce informazioni sullo schema per l'origine dati di utilizzando OleDbConnection la stringa specificata per il nome dello schema e la matrice di stringhe specificata per i valori di restrizione. |
| GetSchema(String) |
Restituisce informazioni sullo schema per l'origine dati di utilizzando OleDbConnection la stringa specificata per il nome dello schema. |
| GetService(Type) |
Restituisce un oggetto che rappresenta un servizio fornito da Component o da Container. (Ereditato da Component) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| InitializeLifetimeService() |
Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza. (Ereditato da MarshalByRefObject) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| MemberwiseClone(Boolean) |
Crea una copia superficiale dell'oggetto corrente MarshalByRefObject . (Ereditato da MarshalByRefObject) |
| OnStateChange(StateChangeEventArgs) |
Genera l'evento StateChange. (Ereditato da DbConnection) |
| Open() |
Apre una connessione di database con le impostazioni delle proprietà specificate da ConnectionString. |
| OpenAsync() |
Versione asincrona di , che apre una connessione di Open()database con le impostazioni specificate da ConnectionString. Questo metodo richiama il metodo OpenAsync(CancellationToken) virtuale con CancellationToken.None. (Ereditato da DbConnection) |
| OpenAsync(CancellationToken) |
Si tratta della versione asincrona di Open(). I provider devono eseguire l'override con un'implementazione appropriata. Il token di annullamento può essere facoltativamente rispettato. L'implementazione predefinita richiama la chiamata sincrona Open() e restituisce un'attività completata. L'implementazione predefinita restituirà un'attività annullata se è stato passato un oggetto cancellationToken già annullato. Le eccezioni generate da Open verranno comunicate tramite la proprietà Task Exception restituita. Non richiamare altri metodi e proprietà dell'oggetto |
| ReleaseObjectPool() |
Indica che il OleDbConnection pool di oggetti può essere rilasciato quando viene rilasciata l'ultima connessione sottostante. |
| ResetState() |
Aggiorna la State proprietà dell'oggetto OleDbConnection . |
| ToString() |
Restituisce un oggetto String contenente il nome dell'oggetto Component, se presente. Questo metodo non deve essere sottoposto a override. (Ereditato da Component) |
Eventi
| Nome | Descrizione |
|---|---|
| Disposed |
Si verifica quando il componente viene eliminato da una chiamata al Dispose() metodo . (Ereditato da Component) |
| InfoMessage |
Si verifica quando il provider invia un avviso o un messaggio informativo. |
| StateChange |
Si verifica quando lo stato della connessione cambia. |
| StateChange |
Si verifica quando lo stato della connessione cambia. (Ereditato da DbConnection) |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| ICloneable.Clone() |
Per una descrizione di questo membro, vedere Clone(). |
| IDbConnection.BeginTransaction() |
Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice. Avvia una transazione di database. |
| IDbConnection.BeginTransaction() |
Avvia una transazione di database. (Ereditato da DbConnection) |
| IDbConnection.BeginTransaction(IsolationLevel) |
Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice. Avvia una transazione di database con il livello di isolamento specificato. |
| IDbConnection.BeginTransaction(IsolationLevel) |
Avvia una transazione di database con il livello di isolamento specificato. (Ereditato da DbConnection) |
| IDbConnection.CreateCommand() |
Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice. Crea e restituisce un oggetto comando associato alla connessione. |
| IDbConnection.CreateCommand() |
Crea e restituisce un DbCommand oggetto associato alla connessione corrente. (Ereditato da DbConnection) |