OleDbConnection Klasse

Definition

Stellt eine offene Verbindung mit einer Datenquelle dar.

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
Vererbung
Vererbung
Implementiert

Beispiele

Im folgenden Beispiel wird eine OleDbCommand und eine OleDbConnection. Die OleDbConnection Wird geöffnet und als für die ConnectionOleDbCommand. Anschließend wird die Verbindung aufgerufen ExecuteNonQuery und geschlossen. 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 möglicherweise einige Methoden oder Eigenschaften eines OleDbConnection Objekts nicht verfügbar.

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

Sie können mehrere DataReader auf einem einzigen 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 der OleDbConnection Bereich nicht mehr vorhanden ist, wird er nicht geschlossen. Daher müssen Sie die Verbindung explizit schließen, indem Sie die Verbindung aufrufen Close oder dispose oder das OleDbConnection Objekt in einer Using Anweisung verwenden.

Note

Um leistungsstarke Anwendungen bereitzustellen, müssen Sie verbindungspooling verwenden. Wenn Sie das .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 Verbindungspooling mit dem .NET Framework Datenanbieter für OLE DB finden Sie unter OLE DB, ODBC und Oracle Connection Pooling.

Wenn ein schwerwiegender OleDbException (z. B. ein SQL Server Schweregrad von 20 oder höher) durch die Methode generiert wird, die eine OleDbCommand ausführt, kann die OleDbConnection geschlossen werden. 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 die Sicherheitsrichtlinie auf Computer-, Benutzer- und Unternehmensebene zu ändern. Weitere Informationen finden Sie unter Code Access Security und ADO.NET.

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

Note

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

Konstruktoren

Name Beschreibung
OleDbConnection()

Initialisiert eine neue Instanz der OleDbConnection-Klasse.

OleDbConnection(String)

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

Eigenschaften

Name Beschreibung
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 das, das IContainer die Component.

(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 dies DbProviderFactoryDbConnectionab.

(Geerbt von DbConnection)
DesignMode

Ruft einen Wert ab, der angibt, ob sich der Component Entwurfsmodus derzeit 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

Ruft den ISite von Component ab oder legt ihn fest.

(Geerbt von Component)
State

Ruft den aktuellen Status der Verbindung ab.

Methoden

Name Beschreibung
BeginDbTransaction(IsolationLevel)

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

(Geerbt von DbConnection)
BeginTransaction()

Startet eine Datenbanktransaktion mit dem aktuellen IsolationLevel Wert.

BeginTransaction(IsolationLevel)

Startet eine Datenbanktransaktion mit der angegebenen Isolationsstufe.

ChangeDatabase(String)

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

Close()

Schließt die Verbindung mit der Datenquelle.

CreateCommand()

Erstellt und gibt ein OleDbCommand Objekt zurück, das der OleDbConnection.

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()

Veröffentlicht alle ressourcen, die von der Component.

(Geerbt von Component)
Dispose(Boolean)

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

(Geerbt von Component)
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 gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetLifetimeService()

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 Werts OleDbConnectionzurück.

GetSchema(String, String[])

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

GetSchema(String)

Gibt Schemainformationen für die Datenquelle zurück OleDbConnection , die die angegebene Zeichenfolge für den Schemanamen verwendet.

GetService(Type)

Gibt ein Objekt zurück, das einen Dienst darstellt, der von der Component oder dem zugehörigen ContainerDienst bereitgestellt wird.

(Geerbt von Component)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
InitializeLifetimeService()

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 ConnectionString.

OpenAsync()

Eine asynchrone Version von Open(), die eine Datenbankverbindung mit den einstellungen öffnet, die durch die ConnectionString. 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, wenn 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 mit dem Namen des Component, falls vorhanden, zurück. Diese Methode sollte nicht außer Kraft gesetzt werden.

(Geerbt von Component)

Ereignisse

Name Beschreibung
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

Name Beschreibung
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)

Gilt für:

Weitere Informationen