OleDbConnection Klasse

Definition

Stellt eine offene Verbindung mit einer Datenquelle dar.Represents an open connection to a data source.

public ref class OleDbConnection sealed : System::Data::Common::DbConnection, ICloneable, IDisposable
public sealed class OleDbConnection : System.Data.Common.DbConnection, ICloneable, IDisposable
type OleDbConnection = class
    inherit DbConnection
    interface ICloneable
    interface IDbConnection
    interface IDisposable
Public NotInheritable Class OleDbConnection
Inherits DbConnection
Implements ICloneable, IDisposable
Vererbung
Implementiert

Beispiele

Das folgende Beispiel erstellt eine OleDbCommand und ein OleDbConnection.The following example creates an OleDbCommand and an OleDbConnection. Der OleDbConnection wird geöffnet und als Connection für die OleDbCommandfestgelegt.The OleDbConnection is opened and set as the Connection for the OleDbCommand. Im Beispiel wird dann ExecuteNonQuery aufgerufen und die Verbindung geschlossen.The example then calls ExecuteNonQuery and closes the connection. Zu diesem Zweck wird ExecuteNonQuery eine Verbindungs Zeichenfolge und eine Abfrage Zeichenfolge, die eine SQL INSERT-Anweisung ist, übermittelt.To accomplish this, ExecuteNonQuery is passed a connection string and a query string that is an SQL INSERT statement.

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.An OleDbConnection object represents a unique connection to a data source. Bei einem Client/Server-Datenbanksystem entspricht dies einer Netzwerkverbindung mit dem Server.With a client/server database system, it is equivalent to a network connection to the 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.Depending on the functionality supported by the native OLE DB provider, some methods or properties of an OleDbConnection object may not be available.

Wenn Sie eine Instanz von OleDbConnectionerstellen, werden alle Eigenschaften auf die Anfangswerte festgelegt.When you create an instance of OleDbConnection, all properties are set to their initial values. Eine Liste dieser Werte finden Sie im OleDbConnection-Konstruktor.For a list of these values, see the OleDbConnection constructor.

Sie können mehr als einen DataReader auf einem einzelnen OleDbConnectionöffnen.You can open more than one DataReader on a single OleDbConnection. Wenn der OLE DB-Anbieter, den Sie verwenden, in einer einzelnen Verbindung nicht mehr als einen DataReader unterstützt, öffnet der Anbieter implizit eine zusätzliche Verbindung für jede Verbindung.If the OLE DB provider you use does not support more than one DataReader on a single connection, the provider implicitly opens an additional connection for each.

Wenn der OleDbConnection den Gültigkeitsbereich verlässt, wird er nicht geschlossen.If the OleDbConnection goes out of scope, it is not closed. Daher müssen Sie die Verbindung explizit schließen, indem Sie Close aufrufen oder dasOleDbConnection-Objekt innerhalb einer Using-Anweisung verwenden.Therefore, you must explicitly close the connection by calling Close or Dispose, or by using the OleDbConnection object within a Using statement.

Hinweis

Zum Bereitstellen von Hochleistungsanwendungen müssen Sie das Verbindungspooling verwenden.To deploy high-performance applications, you must use connection pooling. Wenn Sie die .NET Framework Datenanbieter für OLE DB verwenden, müssen Sie das Verbindungspooling nicht aktivieren, da der Anbieter dies automatisch verwaltet.When you use the .NET Framework Data Provider for OLE DB, you do not have to enable connection pooling because the provider manages this automatically. Weitere Informationen zur Verwendung von Verbindungspooling mit den .NET Framework Datenanbieter für OLE DB finden Sie unter OLE DB, ODBC und Oracle-Verbindungspooling.For more information about how to use connection pooling with the .NET Framework Data Provider for OLE DB, see OLE DB, ODBC, and Oracle Connection Pooling.

Wenn ein schwerwiegender OleDbException (z. b. ein SQL Server Schweregrad von 20 oder höher) von der Methode generiert wird, die eine OleDbCommandausführt, werden die OleDbConnection möglicherweise geschlossen.If a fatal OleDbException (for example, a SQL Server severity level of 20 or greater) is generated by the method executing an OleDbCommand, the OleDbConnection might be closed. Die Benutzer können die Verbindung aber erneut öffnen und fortfahren.However, the user can reopen the connection and continue.

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 deklarative oder imperative Sicherheitsanforderungen festgelegt werden.An application that creates an instance of the OleDbConnection object can require all direct and indirect callers to have sufficient permission to the code by setting declarative or imperative security demands. OleDbConnection nimmt Sicherheitsanforderungen mithilfe des OleDbPermission Objekts an.OleDbConnection makes security demands using the OleDbPermission object. Benutzer können überprüfen, ob Ihr Code über ausreichende Berechtigungen verfügt, indem Sie das OleDbPermissionAttribute-Objekt verwenden.Users can verify that their code has sufficient permissions by using the OleDbPermissionAttribute object. Benutzer und Administratoren können auch das Caspol. exe (Code Access Security Policy-Tool) verwenden, um die Sicherheitsrichtlinien auf Computer-, Benutzer-und Unternehmensebene zu ändern.Users and administrators can also use the Caspol.exe (Code Access Security Policy Tool) to modify security policy at the computer, user, and enterprise levels. Weitere Informationen finden Sie unter Code Access Security and ADO.NET.For more information, see Code Access Security and ADO.NET.

Weitere Informationen zur Behandlung von Warn-und Informationsmeldungen vom Datenserver finden Sie unter Verbindungs Ereignisse.For more information about handling warning and informational messages from the data server, see Connection Events.

Hinweis

Das OleDbConnection-Objekt unterstützt das Festlegen oder Abrufen von dynamischen Eigenschaften, die für einen OLE DB Anbieter spezifisch sind.The OleDbConnection object does not support setting or retrieving dynamic properties specific to an OLE DB provider. Es werden nur Eigenschaften unterstützt, die in der Verbindungszeichenfolge für den OLE DB-Anbieter übergeben werden können.Only properties that can be passed in the connection string for the OLE DB provider are supported.

Konstruktoren

OleDbConnection()

Initialisiert eine neue Instanz der OleDbConnection-Klasse.Initializes a new instance of the OleDbConnection class.

OleDbConnection(String)

Initialisiert eine neue Instanz der OleDbConnection-Klasse mit der angegebenen Verbindungszeichenfolge.Initializes a new instance of the OleDbConnection class with the specified connection string.

Eigenschaften

CanRaiseEvents

Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann.Gets a value indicating whether the component can raise an event.

(Geerbt von Component)
ConnectionString

Ruft die Zeichenfolge ab, mit der eine Datenbank geöffnet wird, oder legt diese fest.Gets or sets the string used to open a database.

ConnectionTimeout

Ruft die Zeit (in Sekunden) ab, die beim Verbindungsaufbau gewartet werden soll, bis der Versuch beendet und ein Fehler generiert wird.Gets the time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error.

Container

Ruft den IContainer ab, der die Component enthält.Gets the IContainer that contains the Component.

(Geerbt von Component)
Database

Ruft den Namen der aktuellen Datenbank oder der nach dem Öffnen einer Verbindung zu verwendenden Datenbank ab.Gets the name of the current database or the database to be used after a connection is opened.

DataSource

Ruft den Servernamen oder den Dateinamen der Datenquelle ab.Gets the server name or file name of the data source.

DesignMode

Ruft einen Wert ab, der angibt, ob sich Component gegenwärtig im Entwurfsmodus befindet.Gets a value that indicates whether the Component is currently in design mode.

(Geerbt von Component)
Events

Ruft die Liste der Ereignishandler ab, die dieser Component angefügt sind.Gets the list of event handlers that are attached to this Component.

(Geerbt von Component)
Provider

Ruft den in der "Provider= "-Klausel der Verbindungszeichenfolge angegebenen Namen des OLE DB-Providers ab.Gets the name of the OLE DB provider specified in the "Provider= " clause of the connection string.

ServerVersion

Ruft eine Zeichenfolge mit der Version des Servers ab, mit der der Client verbunden ist.Gets a string that contains the version of the server to which the client is connected.

Site

Ruft den ISite von Component ab oder legt ihn fest.Gets or sets the ISite of the Component.

(Geerbt von Component)
State

Ruft den aktuellen Zustand der Verbindung ab.Gets the current state of the connection.

Methoden

BeginTransaction()

Beginnt eine Datenbanktransaktion mit dem aktuellen IsolationLevel-Wert.Starts a database transaction with the current IsolationLevel value.

BeginTransaction(IsolationLevel)

Startet eine Datenbanktransaktion mit dem angegebenen Isolationsgrad.Starts a database transaction with the specified isolation level.

ChangeDatabase(String)

Ändert die aktuelle Datenbank für eine offene OleDbConnection.Changes the current database for an open OleDbConnection.

Close()

Schließt die Verbindung mit der Datenquelle.Closes the connection to the data source.

CreateCommand()

Erstellt ein OleDbCommand-Objekt, das der OleDbConnection zugeordnet ist, und gibt es zurück.Creates and returns an OleDbCommand object associated with the OleDbConnection.

CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Geerbt von MarshalByRefObject)
Dispose()

Gibt alle vom Component verwendeten Ressourcen frei.Releases all resources used by the Component.

(Geerbt von Component)
Dispose(Boolean)

Gibt die von Component verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Geerbt von Component)
EnlistDistributedTransaction(ITransaction)

Trägt sich in der angegebenen Transaktion als verteilte Transaktion ein.Enlists in the specified transaction as a distributed transaction.

EnlistTransaction(Transaction)

Trägt sich in der angegebenen Transaktion als verteilte Transaktion ein.Enlists in the specified transaction as a distributed transaction.

Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetLifetimeService()

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

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

Gibt Schemainformationen aus einer Datenquelle entsprechend den Angaben einer GUID zurück und wendet anschließend die angegebenen Einschränkungen an.Returns schema information from a data source as indicated by a GUID, and after it applies the specified restrictions.

GetSchema()

Gibt Schemainformationen für die Datenquelle dieser OleDbConnection zurück.Returns schema information for the data source of this OleDbConnection.

GetSchema(String)

Gibt Schemainformationen für die Datenquelle dieser OleDbConnection mithilfe der angegebenen Zeichenfolge des Schemanamens zurück.Returns schema information for the data source of this OleDbConnection using the specified string for the schema name.

GetSchema(String, String[])

Gibt Schemainformationen für die Datenquelle dieser OleDbConnection mithilfe der angegebenen Zeichenfolge des Schemanamens und des angegebenen Zeichenfolgenarrays der Einschränkungswerte zurück.Returns schema information for the data source of this OleDbConnection using the specified string for the schema name and the specified string array for the restriction values.

GetService(Type)

Gibt ein Objekt zurück, das einen von der Component oder von deren Container bereitgestellten Dienst darstellt.Returns an object that represents a service provided by the Component or by its Container.

(Geerbt von Component)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
InitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.Obtains a lifetime service object to control the lifetime policy for this instance.

(Geerbt von MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.Creates a shallow copy of the current MarshalByRefObject object.

(Geerbt von MarshalByRefObject)
Open()

Öffnet eine Datenbankverbindung mit den von der ConnectionString angegebenen Eigenschafteneinstellungen.Opens a database connection with the property settings specified by the ConnectionString.

ReleaseObjectPool()

Gibt an, dass der OleDbConnection-Objektpool freigegeben werden kann, sobald die letzte zugrunde liegende Verbindung freigegeben wurde.Indicates that the OleDbConnection object pool can be released when the last underlying connection is released.

ResetState()

Aktualisiert die State-Eigenschaft des OleDbConnection-Objekts.Updates the State property of the OleDbConnection object.

ToString()

Gibt einen String zurück, der den Namen der Component enthält (sofern vorhanden).Returns a String containing the name of the Component, if any. Diese Methode darf nicht überschrieben werden.This method should not be overridden.

(Geerbt von Component)

Ereignisse

Disposed

Tritt ein, wenn die Komponente durch einen Aufruf der Dispose()-Methode freigegeben wird.Occurs when the component is disposed by a call to the Dispose() method.

(Geerbt von Component)
InfoMessage

Tritt beim Senden von Warn- oder Informationsmeldungen durch den Provider ein.Occurs when the provider sends a warning or an informational message.

StateChange

Explizite Schnittstellenimplementierungen

ICloneable.Clone()

Eine Beschreibung dieses Elements finden Sie unter Clone().For a description of this member, see Clone().

IDbConnection.BeginTransaction()

Beginnt eine Datenbanktransaktion.Begins a database transaction.

IDbConnection.BeginTransaction(IsolationLevel)

Beginnt eine Datenbanktransaktion mit der angegebenen Isolationsstufe.Begins a database transaction with the specified isolation level.

IDbConnection.CreateCommand()

Erstellt ein command-Objekt, das der Verbindung zugeordnet ist, und gibt dieses zurück.Creates and returns a command object associated with the connection.

Gilt für:

Siehe auch