OleDbConnection Classe

Definizione

Rappresenta una connessione aperta a un'origine dati.

public ref class OleDbConnection sealed : System::Data::Common::DbConnection, ICloneable
public ref class OleDbConnection sealed : System::Data::Common::DbConnection, ICloneable, IDisposable
public ref class OleDbConnection sealed : System::ComponentModel::Component, ICloneable, IDisposable, System::Data::IDbConnection
public sealed class OleDbConnection : System.Data.Common.DbConnection, ICloneable
public sealed class OleDbConnection : System.Data.Common.DbConnection, ICloneable, IDisposable
public sealed class OleDbConnection : System.ComponentModel.Component, ICloneable, IDisposable, System.Data.IDbConnection
type OleDbConnection = class
    inherit DbConnection
    interface IDbConnection
    interface IDisposable
    interface ICloneable
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 DbConnection
Implements ICloneable
Public NotInheritable Class OleDbConnection
Inherits DbConnection
Implements ICloneable, IDisposable
Public NotInheritable Class OleDbConnection
Inherits Component
Implements ICloneable, IDbConnection, IDisposable
Ereditarietà
OleDbConnection
Ereditarietà
Ereditarietà
Implementazioni

Esempio

Nell'esempio seguente viene creato un oggetto OleDbCommand e un oggetto OleDbConnection. L'oggetto OleDbConnection viene aperto e impostato come Connection per .OleDbCommand L'esempio chiama ExecuteNonQuery e chiude la connessione. A tale scopo, ExecuteNonQuery viene passata una 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 delle funzionalità supportate 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 .

Nota

Per distribuire applicazioni ad alte prestazioni, è necessario usare il pool di connessioni. Quando si usa il provider di dati .NET Framework per OLE DB, non è necessario abilitare il pool di connessioni perché il provider gestisce automaticamente questa operazione. Per altre informazioni su come usare il pool di connessioni con il provider di dati .NET Framework per OLE DB, vedere OLE DB, ODBC e Oracle Connection Pooling.

Se un valore irreversibile OleDbException ,ad esempio, un SQL Server livello di gravità pari a 20 o superiore) viene generato dal metodo che esegue un OleDbCommandoggetto , potrebbe OleDbConnection essere chiuso. L'utente può tuttavia 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 per l'accesso al 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.

Nota

L'oggetto OleDbConnection non supporta l'impostazione 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

OleDbConnection()

Inizializza una nuova istanza della classe OleDbConnection.

OleDbConnection(String)

Inizializza una nuova istanza della classe OleDbConnection con la stringa di connessione specificata.

Proprietà

CanCreateBatch

Ottiene un valore che indica se questa istanza di DbConnection supporta la classe DbBatch.

(Ereditato da DbConnection)
CanRaiseEvents

Ottiene un valore che indica se il componente può generare un evento.

(Ereditato da Component)
ConnectionString

Ottiene o imposta la stringa usata per aprire un database.

ConnectionTimeout

Ottiene il tempo di attesa (in secondi) mentre si tenta di stabilire una connessione prima di terminare il tentativo e generare un errore.

Container

Ottiene l'oggetto IContainer che contiene Component.

(Ereditato da Component)
Database

Ottiene il nome del database corrente o del database da usare dopo l'apertura della connessione.

DataSource

Ottiene il nome server o il nome file dell'origine dati.

DbProviderFactory

Ottiene l'oggetto DbProviderFactory per l'oggetto DbConnection.

(Ereditato da DbConnection)
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)
Provider

Ottiene il nome del provider OLE DB specificato nella clausola "Provider= " della stringa di connessione.

ServerVersion

Ottiene una stringa che contiene la versione del server a cui è connesso il client.

Site

Ottiene o imposta l'oggetto ISite di Component.

(Ereditato da Component)
State

Ottiene lo stato corrente della connessione.

Metodi

BeginDbTransaction(IsolationLevel)

In caso di override in una classe derivata, avvia una transazione di database.

(Ereditato da DbConnection)
BeginDbTransactionAsync(IsolationLevel, CancellationToken)

Avvia una transazione di database in modo asincrono.

(Ereditato da DbConnection)
BeginTransaction()

Avvia una transazione di database con il valore IsolationLevel corrente.

BeginTransaction(IsolationLevel)

Inizia una transazione di database con il livello di isolamento specificato.

BeginTransactionAsync(CancellationToken)

Avvia una transazione di database in modo asincrono.

(Ereditato da DbConnection)
BeginTransactionAsync(IsolationLevel, CancellationToken)

Avvia una transazione di database in modo asincrono.

(Ereditato da DbConnection)
ChangeDatabase(String)

Modifica il database corrente per un oggetto OleDbConnection aperto.

ChangeDatabaseAsync(String, CancellationToken)

Cambia il database corrente in modo asincrono per una connessione aperta.

(Ereditato da DbConnection)
Close()

Chiude la connessione all'origine dati.

CloseAsync()

Chiude la connessione al database in modo asincrono.

(Ereditato da DbConnection)
CreateBatch()

Restituisce una nuova istanza della classe del provider che implementa la classe DbBatch.

(Ereditato da DbConnection)
CreateCommand()

Crea e restituisce un oggetto OleDbCommand associato alla classe OleDbConnection.

CreateDbBatch()

In caso di override in una classe derivata, restituisce una nuova istanza della classe del provider che implementa la DbBatch classe .

(Ereditato da DbConnection)
CreateDbCommand()

In caso di override in una classe derivata, crea e restituisce un oggetto DbCommand associato alla connessione corrente.

(Ereditato da DbConnection)
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)
Dispose()

Esegue attività definite dall'applicazione, come rilasciare o reimpostare risorse non gestite.

(Ereditato da DbConnection)
Dispose()

Rilascia tutte le risorse usate da Component.

(Ereditato da Component)
Dispose(Boolean)

Rilascia le risorse non gestite usate da DbConnection e, facoltativamente, le risorse gestite.

(Ereditato da DbConnection)
Dispose(Boolean)

Rilascia le risorse non gestite usate da Component e, facoltativamente, le risorse gestite.

(Ereditato da Component)
DisposeAsync()

Elimina in modo asincrono l'oggetto connessione.

(Ereditato da DbConnection)
EnlistDistributedTransaction(ITransaction)

Permette l'integrazione nella transazione specificata come transazione distribuita.

EnlistTransaction(Transaction)

Permette l'integrazione nella 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()
Obsoleti.

Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza.

(Ereditato da MarshalByRefObject)
GetOleDbSchemaTable(Guid, Object[])

Restituisce informazioni di 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 oggetto OleDbConnection.

GetSchema(String)

Restituisce le informazioni di schema per l'origine dati dell'oggetto OleDbConnection usando la stringa specificata per il nome dello schema.

GetSchema(String, String[])

Restituisce le informazioni di schema per l'origine dati dell'oggetto OleDbConnection utilizzando la stringa specificata per il nome dello schema e la matrice di stringhe specificata per i valori di restrizione.

GetSchemaAsync(CancellationToken)

Si tratta di una versione asincrona di GetSchema(). I provider devono eseguire l'override con un'implementazione appropriata. cancellationToken può facoltativamente essere rispettato. L'implementazione predefinita richiama la chiamata sincrona GetSchema() e restituisce un'attività completata. L'implementazione predefinita restituirà un'attività annullata se viene passato un cancellationToken già annullato. Le eccezioni generate da GetSchema() verranno passate mediante la proprietà Task Exception restituita.

(Ereditato da DbConnection)
GetSchemaAsync(String, CancellationToken)

Si tratta della versione asincrona di GetSchema(String). I provider devono eseguire l'override con un'implementazione appropriata. cancellationToken può facoltativamente essere rispettato. L'implementazione predefinita richiama la chiamata sincrona GetSchema(String) e restituisce un'attività completata. L'implementazione predefinita restituirà un'attività annullata se viene passato un cancellationToken già annullato. Le eccezioni generate da GetSchema(String) verranno passate mediante la proprietà Task Exception restituita.

(Ereditato da DbConnection)
GetSchemaAsync(String, String[], CancellationToken)

Si tratta della versione asincrona di GetSchema(String, String[]). I provider devono eseguire l'override con un'implementazione appropriata. cancellationToken può facoltativamente essere rispettato. L'implementazione predefinita richiama la chiamata sincrona GetSchema(String, String[]) e restituisce un'attività completata. L'implementazione predefinita restituirà un'attività annullata se viene passato un cancellationToken già annullato. Le eccezioni generate da GetSchema(String, String[]) verranno passate mediante la proprietà Task Exception restituita.

(Ereditato da DbConnection)
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)
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)
OnStateChange(StateChangeEventArgs)

Genera l'evento StateChange.

(Ereditato da DbConnection)
Open()

Apre una connessione a un database con le impostazioni delle proprietà specificate dalla proprietà ConnectionString.

OpenAsync()

Versione asincrona di Open(), che apre una connessione di database con le impostazioni specificate da ConnectionString. Questo metodo richiama il metodo virtuale OpenAsync(CancellationToken) 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ò facoltativamente essere rispettato.

L'implementazione predefinita richiama la chiamata sincrona Open() e restituisce un'attività completata. L'implementazione predefinita restituirà un'attività annullata se viene passato un cancellationToken già annullato. Le eccezioni generate da Open verranno passate mediante la proprietà Task Exception restituita.

Non richiamare altri metodi e proprietà dell'oggetto DbConnection finché l'attività restituita non viene completata.

(Ereditato da DbConnection)
ReleaseObjectPool()

Indica che il pool di oggetti OleDbConnection può essere rilasciato quando viene rilasciata l'ultima connessione sottostante.

ResetState()

Aggiorna la proprietà State dell'oggetto OleDbConnection.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
ToString()

Restituisce un oggetto String che contiene il nome dell'eventuale oggetto Component. Questo metodo non deve essere sottoposto a override.

(Ereditato da Component)

Eventi

Disposed

Si verifica quando il componente viene eliminato da una chiamata al metodo Dispose().

(Ereditato da Component)
InfoMessage

Viene generato quando il provider invia un avviso o un messaggio informativo.

StateChange

Si verifica quando cambia lo stato della connessione.

StateChange

Si verifica quando cambia lo stato della connessione.

(Ereditato da DbConnection)

Implementazioni dell'interfaccia esplicita

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.

Inizia una transazione di database con il livello di isolamento specificato.

IDbConnection.BeginTransaction(IsolationLevel)

Inizia 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 Command associato alla connessione.

IDbConnection.CreateCommand()

Crea e restituisce un oggetto DbCommand associato alla connessione corrente.

(Ereditato da DbConnection)

Si applica a

Vedi anche