Teilen über


OleDbConnection Klasse

Definition

Stellt eine offene Verbindung mit einer Datenquelle dar.

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 ref class OleDbConnection sealed : 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
public sealed class OleDbConnection : System.Data.Common.DbConnection, ICloneable
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, IDisposable
Public NotInheritable Class OleDbConnection
Inherits Component
Implements ICloneable, IDbConnection, IDisposable
Public NotInheritable Class OleDbConnection
Inherits DbConnection
Implements ICloneable
Vererbung
Vererbung
Implementiert

Beispiele

Im folgenden Beispiel wird ein OleDbCommand und ein OleDbConnectionerstellt. Die OleDbConnection wird geöffnet und als Connection für die OleDbCommandfestgelegt. Anschließend ruft das Beispiel ExecuteNonQuery auf und schließt die Verbindung. Dazu wird ExecuteNonQuery eine Verbindungszeichenfolge und eine Abfragezeichenfolge übergeben, die eine SQL INSERT-Anweisung ist.

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

Hinweise

Ein OleDbConnection-Objekt stellt eine eindeutige Verbindung zu einer Datenquelle dar. Bei einem Client-/Serverdatenbanksystem entspricht es einer Netzwerkverbindung mit dem Server. Abhängig von der vom systemeigenen OLE DB-Anbieter unterstützten Funktionalität sind einige Methoden oder Eigenschaften eines OleDbConnection-Objekts möglicherweise nicht verfügbar.

Wenn Sie eine Instanz von OleDbConnectionerstellen, werden alle Eigenschaften auf ihre Anfangswerte festgelegt. Eine Liste dieser Werte finden Sie im OleDbConnection-Konstruktor.

Sie können mehrere DataReader auf einem einzelnen OleDbConnectionöffnen. Wenn der verwendete OLE DB-Anbieter nicht mehr als einen DataReader für eine einzelne Verbindung unterstützt, öffnet der Anbieter implizit eine zusätzliche Verbindung für jede.

Wenn die OleDbConnection nicht mehr gültig ist, wird sie nicht geschlossen. Daher müssen Sie die Verbindung explizit schließen, indem Sie Close oder Disposeaufrufen oder das OleDbConnection-Objekt in einer Using-Anweisung verwenden.

Anmerkung

Um leistungsstarke Anwendungen bereitzustellen, müssen Sie verbindungspooling verwenden. Wenn Sie den .NET Framework-Datenanbieter für OLE DB verwenden, müssen Sie keine Verbindungspooling aktivieren, da der Anbieter dies automatisch verwaltet. Weitere Informationen zur Verwendung von Verbindungspools mit dem .NET Framework-Datenanbieter für OLE DB finden Sie unter OLE DB-, ODBC- und Oracle-Verbindungspooling-.

Wenn ein schwerwiegender OleDbException (z. B. ein SQL Server-Schweregrad von 20 oder höher) durch die Methode generiert wird, die eine OleDbCommandausführt, wird die OleDbConnection möglicherweise geschlossen. Der Benutzer kann die Verbindung jedoch erneut öffnen und fortfahren.

Eine Anwendung, die eine Instanz des OleDbConnection-Objekts erstellt, kann erfordern, dass alle direkten und indirekten Aufrufer über ausreichende Berechtigungen für den Code verfügen, indem sie deklarative oder imperative Sicherheitsanforderungen festlegen. OleDbConnection stellt Sicherheitsanforderungen mithilfe des OleDbPermission Objekts. Benutzer können überprüfen, ob ihr Code über ausreichende Berechtigungen verfügt, indem sie das OleDbPermissionAttribute-Objekt verwenden. Benutzer und Administratoren können auch das Caspol.exe (Code Access Security Policy Tool) verwenden, um sicherheitsrichtlinien auf Computer-, Benutzer- und Unternehmensebene zu ändern. Weitere Informationen finden Sie unter CodeZugriffssicherheit und ADO.NET.

Weitere Informationen zum Behandeln von Warnungen und Informationsmeldungen vom Datenserver finden Sie unter Verbindungsereignisse.

Anmerkung

Das OleDbConnection-Objekt unterstützt das Festlegen oder Abrufen dynamischer Eigenschaften, die spezifisch für einen OLE DB-Anbieter sind, nicht. Es werden nur Eigenschaften unterstützt, die in der Verbindungszeichenfolge für den OLE DB-Anbieter übergeben werden können.

Konstruktoren

OleDbConnection()

Initialisiert eine neue Instanz der OleDbConnection Klasse.

OleDbConnection(String)

Initialisiert eine neue Instanz der OleDbConnection Klasse mit der angegebenen Verbindungszeichenfolge.

Eigenschaften

CanCreateBatch

Ruft einen Wert ab, der angibt, ob diese DbConnection Instanz die DbBatch Klasse unterstützt.

(Geerbt von DbConnection)
CanRaiseEvents

Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann.

(Geerbt von Component)
ConnectionString

Dient zum Abrufen oder Festlegen der Zeichenfolge, die zum Öffnen einer Datenbank verwendet wird.

ConnectionTimeout

Ruft die Wartezeit (in Sekunden) ab, während versucht wird, eine Verbindung herzustellen, bevor der Versuch beendet und ein Fehler generiert wird.

Container

Ruft die IContainer ab, die den Componententhält.

(Geerbt von Component)
Database

Ruft den Namen der aktuellen Datenbank oder der Datenbank ab, die nach dem Öffnen einer Verbindung verwendet werden soll.

DataSource

Ruft den Servernamen oder Dateinamen der Datenquelle ab.

DbProviderFactory

Ruft die DbProviderFactory für diese DbConnectionab.

(Geerbt von DbConnection)
DesignMode

Ruft einen Wert ab, der angibt, ob sich die Component derzeit im Entwurfsmodus befindet.

(Geerbt von Component)
Events

Ruft die Liste der Ereignishandler ab, die an diese Componentangefügt sind.

(Geerbt von Component)
Provider

Ruft den Namen des OLE DB-Anbieters ab, der in der Klausel "Provider= " der Verbindungszeichenfolge angegeben ist.

ServerVersion

Ruft eine Zeichenfolge ab, die die Version des Servers enthält, mit dem der Client verbunden ist.

Site

Dient zum Abrufen oder Festlegen des ISite des Component.

(Geerbt von Component)
State

Ruft den aktuellen Status der Verbindung ab.

Methoden

BeginDbTransaction(IsolationLevel)

Wenn eine abgeleitete Klasse überschrieben wird, wird eine Datenbanktransaktion gestartet.

(Geerbt von DbConnection)
BeginDbTransactionAsync(IsolationLevel, CancellationToken)

Startet asynchron eine Datenbanktransaktion.

(Geerbt von DbConnection)
BeginTransaction()

Startet eine Datenbanktransaktion mit dem aktuellen IsolationLevel Wert.

BeginTransaction(IsolationLevel)

Startet eine Datenbanktransaktion mit der angegebenen Isolationsstufe.

BeginTransactionAsync(CancellationToken)

Beginnt asynchron eine Datenbanktransaktion.

(Geerbt von DbConnection)
BeginTransactionAsync(IsolationLevel, CancellationToken)

Beginnt asynchron eine Datenbanktransaktion.

(Geerbt von DbConnection)
ChangeDatabase(String)

Ändert die aktuelle Datenbank für eine geöffnete OleDbConnection.

ChangeDatabaseAsync(String, CancellationToken)

Ändert asynchron die aktuelle Datenbank für eine geöffnete Verbindung.

(Geerbt von DbConnection)
Close()

Schließt die Verbindung mit der Datenquelle.

CloseAsync()

Schließt die Verbindung mit der Datenbank asynchron.

(Geerbt von DbConnection)
CreateBatch()

Gibt eine neue Instanz der Anbieterklasse zurück, die die DbBatch Klasse implementiert.

(Geerbt von DbConnection)
CreateCommand()

Erstellt und gibt ein OleDbCommand-Objekt zurück, das dem OleDbConnectionzugeordnet ist.

CreateDbBatch()

Wenn eine abgeleitete Klasse überschrieben wird, wird eine neue Instanz der Klasse des Anbieters zurückgegeben, die die DbBatch Klasse implementiert.

(Geerbt von DbConnection)
CreateDbCommand()

Wenn eine abgeleitete Klasse überschrieben wird, wird ein DbCommand Objekt erstellt und zurückgegeben, das der aktuellen Verbindung zugeordnet ist.

(Geerbt von DbConnection)
CreateObjRef(Type)

Erstellt ein Objekt, das alle relevanten Informationen enthält, die zum Generieren eines Proxys erforderlich sind, der für die Kommunikation mit einem Remoteobjekt verwendet wird.

(Geerbt von MarshalByRefObject)
Dispose()

Führt anwendungsdefinierte Aufgaben aus, die mit dem Freigeben, Freigeben oder Zurücksetzen nicht verwalteter Ressourcen verknüpft sind.

(Geerbt von DbConnection)
Dispose()

Gibt alle vom Componentverwendeten Ressourcen frei.

(Geerbt von Component)
Dispose(Boolean)

Gibt die nicht verwalteten Ressourcen frei, die vom DbConnection verwendet werden, und gibt optional die verwalteten Ressourcen frei.

(Geerbt von DbConnection)
Dispose(Boolean)

Gibt die nicht verwalteten Ressourcen frei, die vom Component verwendet werden, und gibt optional die verwalteten Ressourcen frei.

(Geerbt von Component)
DisposeAsync()

Das Verbindungsobjekt wird asynchron eingetaucht.

(Geerbt von DbConnection)
EnlistDistributedTransaction(ITransaction)

Enlists in der angegebenen Transaktion als verteilte Transaktion.

EnlistTransaction(Transaction)

Enlists in der angegebenen Transaktion als verteilte Transaktion.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetLifetimeService()
Veraltet.

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinie für diese Instanz steuert.

(Geerbt von MarshalByRefObject)
GetOleDbSchemaTable(Guid, Object[])

Gibt Schemainformationen aus einer Datenquelle zurück, wie durch eine GUID angegeben, und nachdem die angegebenen Einschränkungen angewendet wurden.

GetSchema()

Gibt Schemainformationen für die Datenquelle dieses OleDbConnectionzurück.

GetSchema(String)

Gibt Schemainformationen für die Datenquelle dieses OleDbConnection mithilfe der angegebenen Zeichenfolge für den Schemanamen zurück.

GetSchema(String, String[])

Gibt Schemainformationen für die Datenquelle dieses OleDbConnection zurück, wobei die angegebene Zeichenfolge für den Schemanamen und das angegebene Zeichenfolgenarray für die Einschränkungswerte verwendet wird.

GetSchemaAsync(CancellationToken)

Dies ist eine asynchrone Version von GetSchema(). Anbieter sollten mit einer geeigneten Implementierung außer Kraft setzen. Die cancellationToken können optional berücksichtigt werden. Die Standardimplementierung ruft den synchronen GetSchema() Aufruf auf und gibt eine abgeschlossene Aufgabe zurück. Die Standardimplementierung gibt eine abgebrochene Aufgabe zurück, wenn eine bereits abgebrochene cancellationTokenübergeben wurde. Ausnahmen, die von GetSchema() ausgelöst werden, werden über die zurückgegebene Task Exception-Eigenschaft kommuniziert.

(Geerbt von DbConnection)
GetSchemaAsync(String, CancellationToken)

Dies ist die asynchrone Version von GetSchema(String). Anbieter sollten mit einer geeigneten Implementierung außer Kraft setzen. Die cancellationToken können optional berücksichtigt werden. Die Standardimplementierung ruft den synchronen GetSchema(String) Aufruf auf und gibt eine abgeschlossene Aufgabe zurück. Die Standardimplementierung gibt eine abgebrochene Aufgabe zurück, wenn eine bereits abgebrochene cancellationTokenübergeben wurde. Ausnahmen, die von GetSchema(String) ausgelöst werden, werden über die zurückgegebene Task Exception-Eigenschaft kommuniziert.

(Geerbt von DbConnection)
GetSchemaAsync(String, String[], CancellationToken)

Dies ist die asynchrone Version von GetSchema(String, String[]). Anbieter sollten mit einer geeigneten Implementierung außer Kraft setzen. Die cancellationToken können optional berücksichtigt werden. Die Standardimplementierung ruft den synchronen GetSchema(String, String[]) Aufruf auf und gibt eine abgeschlossene Aufgabe zurück. Die Standardimplementierung gibt eine abgebrochene Aufgabe zurück, wenn eine bereits abgebrochene cancellationTokenübergeben wurde. Ausnahmen, die von GetSchema(String, String[]) ausgelöst werden, werden über die zurückgegebene Task Exception-Eigenschaft kommuniziert.

(Geerbt von DbConnection)
GetService(Type)

Gibt ein Objekt zurück, das einen Dienst darstellt, der vom Component oder von seinem Containerbereitgestellt wird.

(Geerbt von Component)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
InitializeLifetimeService()
Veraltet.

Ruft ein Lebensdauerdienstobjekt ab, um die Lebensdauerrichtlinie für diese Instanz zu steuern.

(Geerbt von MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.

(Geerbt von MarshalByRefObject)
OnStateChange(StateChangeEventArgs)

Löst das StateChange-Ereignis aus.

(Geerbt von DbConnection)
Open()

Öffnet eine Datenbankverbindung mit den eigenschafteneinstellungen, die durch die ConnectionStringangegeben werden.

OpenAsync()

Eine asynchrone Version von Open(), die eine Datenbankverbindung mit den durch die ConnectionStringangegebenen Einstellungen öffnet. Diese Methode ruft die virtuelle Methode OpenAsync(CancellationToken) mit CancellationToken.None auf.

(Geerbt von DbConnection)
OpenAsync(CancellationToken)

Dies ist die asynchrone Version von Open(). Anbieter sollten mit einer geeigneten Implementierung außer Kraft setzen. Das Abbruchtoken kann optional berücksichtigt werden.

Die Standardimplementierung ruft den synchronen Open() Aufruf auf und gibt eine abgeschlossene Aufgabe zurück. Die Standardimplementierung gibt eine abgebrochene Aufgabe zurück, wenn ein bereits abgebrochenes cancellationToken übergeben wurde. Ausnahmen, die von Open ausgelöst werden, werden über die zurückgegebene Task Exception-Eigenschaft kommuniziert.

Rufen Sie erst andere Methoden und Eigenschaften des DbConnection-Objekts auf, bis die zurückgegebene Aufgabe abgeschlossen ist.

(Geerbt von DbConnection)
ReleaseObjectPool()

Gibt an, dass der OleDbConnection Objektpool freigegeben werden kann, wenn die letzte zugrunde liegende Verbindung freigegeben wird.

ResetState()

Aktualisiert die State-Eigenschaft des OleDbConnection-Objekts.

ToString()

Gibt einen String zurück, der den Namen der Componententhält, falls vorhanden. Diese Methode sollte nicht außer Kraft gesetzt werden.

(Geerbt von Component)

Ereignisse

Disposed

Tritt auf, wenn die Komponente durch einen Aufruf der Dispose() -Methode verworfen wird.

(Geerbt von Component)
InfoMessage

Tritt auf, wenn der Anbieter eine Warnung oder eine Informationsmeldung sendet.

StateChange

Tritt auf, wenn sich der Status der Verbindung ändert.

StateChange

Tritt auf, wenn sich der Status der Verbindung ändert.

(Geerbt von DbConnection)

Explizite Schnittstellenimplementierungen

ICloneable.Clone()

Eine Beschreibung dieses Mitglieds finden Sie unter Clone().

IDbConnection.BeginTransaction()

Diese API unterstützt die Produktinfrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code gedacht.

Beginnt eine Datenbanktransaktion.

IDbConnection.BeginTransaction()

Beginnt eine Datenbanktransaktion.

(Geerbt von DbConnection)
IDbConnection.BeginTransaction(IsolationLevel)

Diese API unterstützt die Produktinfrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code gedacht.

Beginnt eine Datenbanktransaktion mit der angegebenen Isolationsstufe.

IDbConnection.BeginTransaction(IsolationLevel)

Beginnt eine Datenbanktransaktion mit der angegebenen Isolationsstufe.

(Geerbt von DbConnection)
IDbConnection.CreateCommand()

Diese API unterstützt die Produktinfrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code gedacht.

Erstellt und gibt ein Befehlsobjekt zurück, das der Verbindung zugeordnet ist.

IDbConnection.CreateCommand()

Erstellt und gibt ein DbCommand -Objekt zurück, das der aktuellen Verbindung zugeordnet ist.

(Geerbt von DbConnection)

Erweiterungsmethoden

ConfigureAwait(IAsyncDisposable, Boolean)

Konfiguriert, wie auf die von einem asynchronen Einweg zurückgegebenen Aufgaben gewartet wird.

Gilt für:

Weitere Informationen