OleDbConnection Třída

Definice

Představuje otevřené připojení ke zdroji dat.Represents an open connection to a data source.

public ref class OleDbConnection sealed : System::Data::Common::DbConnection, ICloneable
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.Data.Common.DbConnection, ICloneable
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 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 Component
Implements ICloneable, IDbConnection, IDisposable
Public NotInheritable Class OleDbConnection
Inherits DbConnection
Implements ICloneable, IDisposable
Dědičnost
OleDbConnection
Dědičnost
Dědičnost
Implementuje

Příklady

Následující příklad vytvoří OleDbCommand a OleDbConnection .The following example creates an OleDbCommand and an OleDbConnection. OleDbConnectionJe otevřen a nastaven jako Connection pro OleDbCommand .The OleDbConnection is opened and set as the Connection for the OleDbCommand. Příklad pak zavolá ExecuteNonQuery a uzavře připojení.The example then calls ExecuteNonQuery and closes the connection. K tomuto účelu ExecuteNonQuery se předává připojovací řetězec a řetězec dotazu, který je příkazem SQL INSERT.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

Poznámky

OleDbConnectionObjekt představuje jedinečné připojení ke zdroji dat.An OleDbConnection object represents a unique connection to a data source. V případě databázového systému klienta nebo serveru je to ekvivalent síťového připojení k serveru.With a client/server database system, it is equivalent to a network connection to the server. V závislosti na funkcích podporovaných nativním poskytovatelem OLE DB nemusí být některé metody nebo vlastnosti OleDbConnection objektu k dispozici.Depending on the functionality supported by the native OLE DB provider, some methods or properties of an OleDbConnection object may not be available.

Když vytvoříte instanci OleDbConnection , všechny vlastnosti jsou nastaveny na jejich počáteční hodnoty.When you create an instance of OleDbConnection, all properties are set to their initial values. Seznam těchto hodnot naleznete v OleDbConnection konstruktoru.For a list of these values, see the OleDbConnection constructor.

Můžete otevřít více než jeden objekt DataReader na jednom OleDbConnection .You can open more than one DataReader on a single OleDbConnection. Pokud poskytovatel OLE DB, který používáte, nepodporuje více než jeden objekt DataReader u jednoho připojení, zprostředkovatel implicitně otevře další připojení pro každou z nich.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.

Pokud se OleDbConnection překročí rozsah, není uzavřen.If the OleDbConnection goes out of scope, it is not closed. Proto je nutné explicitně uzavřít připojení voláním Close nebo uvolněním nebo pomocí OleDbConnection objektu v rámci Using příkazu.Therefore, you must explicitly close the connection by calling Close or Dispose, or by using the OleDbConnection object within a Using statement.

Poznámka

Chcete-li nasadit vysoce výkonné aplikace, musíte použít sdružování připojení.To deploy high-performance applications, you must use connection pooling. Pokud používáte Zprostředkovatel dat .NET Framework pro OLE DB, není nutné povolit sdružování připojení, protože poskytovatel toto rozhraní spravuje automaticky.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. Další informace o použití sdružování připojení s .NET Framework Zprostředkovatel dat pro OLE DB najdete v tématu sdružování připojení OLE DB, ODBC a Oracle.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.

Pokud je závažná OleDbException metoda (například SQL Server úroveň závažnosti 20 nebo vyšší) vygenerovaná metodou OleDbCommand , která spouští, OleDbConnection může být uzavřená.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. Uživatel však může připojení znovu otevřít a pokračovat.However, the user can reopen the connection and continue.

Aplikace, která vytvoří instanci OleDbConnection objektu, může vyžadovat, aby všichni přímo a nepřímí volající měli dostatečná oprávnění k kódu nastavením deklarativních nebo imperativních požadavků zabezpečení.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 zpřístupňuje požadavky na zabezpečení pomocí OleDbPermission objektu.OleDbConnection makes security demands using the OleDbPermission object. Uživatelé mohou ověřit, zda má kód dostatečná oprávnění, pomocí OleDbPermissionAttribute objektu.Users can verify that their code has sufficient permissions by using the OleDbPermissionAttribute object. Uživatelé a správci mohou také pomocí nástrojeCaspol.exe (zásady zabezpečení přístupu kódu) upravovat zásady zabezpečení na úrovni počítače, uživatele a podniku.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. Další informace najdete v tématu zabezpečení přístupu kódu a ADO.NET.For more information, see Code Access Security and ADO.NET.

Další informace o zpracování upozornění a informativních zpráv z datového serveru najdete v tématu události připojení.For more information about handling warning and informational messages from the data server, see Connection Events.

Poznámka

OleDbConnectionObjekt nepodporuje nastavení nebo načítání dynamických vlastností specifických pro poskytovatele OLE DB.The OleDbConnection object does not support setting or retrieving dynamic properties specific to an OLE DB provider. Jsou podporovány pouze vlastnosti, které lze předat v připojovacím řetězci pro poskytovatele OLE DB.Only properties that can be passed in the connection string for the OLE DB provider are supported.

Konstruktory

OleDbConnection()

Inicializuje novou instanci OleDbConnection třídy.Initializes a new instance of the OleDbConnection class.

OleDbConnection(String)

Inicializuje novou instanci OleDbConnection třídy se zadaným připojovacím řetězcem.Initializes a new instance of the OleDbConnection class with the specified connection string.

Vlastnosti

CanRaiseEvents

Získá hodnotu, která označuje, zda může komponenta vyvolat událost.Gets a value indicating whether the component can raise an event.

(Zděděno od Component)
ConnectionString

Získá nebo nastaví řetězec použitý k otevření databáze.Gets or sets the string used to open a database.

ConnectionTimeout

Získá čas čekání (v sekundách) při pokusu o navázání spojení před ukončením pokusu a vygenerováním chyby.Gets the time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error.

Container

Získá IContainer , který obsahuje Component .Gets the IContainer that contains the Component.

(Zděděno od Component)
Database

Získá název aktuální databáze nebo databáze, která se má použít po otevření připojení.Gets the name of the current database or the database to be used after a connection is opened.

DataSource

Získá název serveru nebo název souboru zdroje dat.Gets the server name or file name of the data source.

DbProviderFactory

Získá DbProviderFactory DbConnection .Gets the DbProviderFactory for this DbConnection.

(Zděděno od DbConnection)
DesignMode

Načte hodnotu, která označuje, zda Component je aktuálně v režimu návrhu.Gets a value that indicates whether the Component is currently in design mode.

(Zděděno od Component)
Events

Získá seznam obslužných rutin událostí, které jsou k tomuto typu připojeny Component .Gets the list of event handlers that are attached to this Component.

(Zděděno od Component)
Provider

Získá název poskytovatele OLE DB zadaného v klauzuli "Provider =" připojovacího řetězce.Gets the name of the OLE DB provider specified in the "Provider= " clause of the connection string.

ServerVersion

Načte řetězec obsahující verzi serveru, ke které je klient připojen.Gets a string that contains the version of the server to which the client is connected.

Site

Získá nebo nastaví ISite z Component .Gets or sets the ISite of the Component.

(Zděděno od Component)
State

Načte aktuální stav připojení.Gets the current state of the connection.

Metody

BeginDbTransaction(IsolationLevel)

Při přepsání v odvozené třídě spustí databázovou transakci.When overridden in a derived class, starts a database transaction.

(Zděděno od DbConnection)
BeginDbTransactionAsync(IsolationLevel, CancellationToken)

Asynchronně spustí databázovou transakci.Asynchronously starts a database transaction.

(Zděděno od DbConnection)
BeginTransaction()

Spustí databázovou transakci s aktuální IsolationLevel hodnotou.Starts a database transaction with the current IsolationLevel value.

BeginTransaction(IsolationLevel)

Spustí databázovou transakci se zadanou úrovní izolace.Starts a database transaction with the specified isolation level.

BeginTransactionAsync(CancellationToken)

Asynchronně zahájí databázovou transakci.Asynchronously begins a database transaction.

(Zděděno od DbConnection)
BeginTransactionAsync(IsolationLevel, CancellationToken)

Asynchronně zahájí databázovou transakci.Asynchronously begins a database transaction.

(Zděděno od DbConnection)
ChangeDatabase(String)

Změní aktuální databázi na otevřený OleDbConnection .Changes the current database for an open OleDbConnection.

ChangeDatabaseAsync(String, CancellationToken)

Asynchronně změní aktuální databázi otevřeného připojení.Asynchronously changes the current database for an open connection.

(Zděděno od DbConnection)
Close()

Ukončí připojení ke zdroji dat.Closes the connection to the data source.

CloseAsync()

Asynchronně uzavře připojení k databázi.Asynchronously closes the connection to the database.

(Zděděno od DbConnection)
CreateCommand()

Vytvoří a vrátí OleDbCommand objekt přidružený k OleDbConnection .Creates and returns an OleDbCommand object associated with the OleDbConnection.

CreateDbCommand()

Při přepsání v odvozené třídě vytvoří a vrátí DbCommand objekt přidružený k aktuálnímu připojení.When overridden in a derived class, creates and returns a DbCommand object associated with the current connection.

(Zděděno od DbConnection)
CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace požadované pro vygenerování proxy serveru, který se používá ke komunikaci se vzdáleným objektem.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Zděděno od MarshalByRefObject)
Dispose()

Provede aplikací definované úlohy spojené s uvolněním nebo resetováním nespravovaných prostředků.Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

(Zděděno od DbConnection)
Dispose()

Uvolní všechny prostředky, které používá Component .Releases all resources used by the Component.

(Zděděno od Component)
Dispose(Boolean)

Uvolní nespravované prostředky používané DbConnection a volitelně uvolňuje spravované prostředky.Releases the unmanaged resources used by the DbConnection and optionally releases the managed resources.

(Zděděno od DbConnection)
Dispose(Boolean)

Uvolní nespravované prostředky používané Component a volitelně uvolňuje spravované prostředky.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Zděděno od Component)
DisposeAsync()

Asynchronně vynutí objekt připojení.Asynchronously diposes the connection object.

(Zděděno od DbConnection)
EnlistDistributedTransaction(ITransaction)

Zařadí v zadané transakci jako distribuovanou transakci.Enlists in the specified transaction as a distributed transaction.

EnlistTransaction(Transaction)

Zařadí v zadané transakci jako distribuovanou transakci.Enlists in the specified transaction as a distributed transaction.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.Determines whether the specified object is equal to the current object.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.Serves as the default hash function.

(Zděděno od Object)
GetLifetimeService()
Zastaralé.

Načte aktuální objekt služby životnosti, který řídí zásady životního cyklu pro tuto instanci.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Zděděno od MarshalByRefObject)
GetOleDbSchemaTable(Guid, Object[])

Vrátí informace o schématu ze zdroje dat, které jsou označeny identifikátorem GUID, a poté, co použije zadaná omezení.Returns schema information from a data source as indicated by a GUID, and after it applies the specified restrictions.

GetSchema()

Vrátí informace o schématu pro zdroj dat OleDbConnection .Returns schema information for the data source of this OleDbConnection.

GetSchema(String)

Vrátí informace o schématu pro zdroj dat s OleDbConnection použitím zadaného řetězce pro název schématu.Returns schema information for the data source of this OleDbConnection using the specified string for the schema name.

GetSchema(String, String[])

Vrátí informace o schématu pro zdroj dat s OleDbConnection použitím zadaného řetězce pro název schématu a zadaného pole řetězce pro hodnoty omezení.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.

GetSchemaAsync(CancellationToken)

Toto je asynchronní verze GetSchema() .This is an asynchronous version of GetSchema(). Poskytovatelé by měli přepsat příslušnou implementací.Providers should override with an appropriate implementation. cancellationTokenMůže být volitelně akceptovatelné.The cancellationToken can optionally be honored. Výchozí implementace vyvolá synchronní GetSchema() volání a vrátí dokončenou úlohu.The default implementation invokes the synchronous GetSchema() call and returns a completed task. Výchozí implementace vrátí zrušenou úlohu, pokud byla předána již zrušena cancellationToken .The default implementation will return a cancelled task if passed an already cancelled cancellationToken. Výjimky vyvolané nástrojem GetSchema() budou sděleny přes vrácenou vlastnost Exception úlohy.Exceptions thrown by GetSchema() will be communicated via the returned Task Exception property.

(Zděděno od DbConnection)
GetSchemaAsync(String, CancellationToken)

Toto je asynchronní verze GetSchema(String) .This is the asynchronous version of GetSchema(String). Poskytovatelé by měli přepsat příslušnou implementací.Providers should override with an appropriate implementation. cancellationTokenMůže být volitelně akceptovatelné.The cancellationToken can optionally be honored. Výchozí implementace vyvolá synchronní GetSchema(String) volání a vrátí dokončenou úlohu.The default implementation invokes the synchronous GetSchema(String) call and returns a completed task. Výchozí implementace vrátí zrušenou úlohu, pokud byla předána již zrušena cancellationToken .The default implementation will return a cancelled task if passed an already cancelled cancellationToken. Výjimky vyvolané nástrojem GetSchema(String) budou sděleny přes vrácenou vlastnost Exception úlohy.Exceptions thrown by GetSchema(String) will be communicated via the returned Task Exception property.

(Zděděno od DbConnection)
GetSchemaAsync(String, String[], CancellationToken)

Toto je asynchronní verze GetSchema(String, String[]) .This is the asynchronous version of GetSchema(String, String[]). Poskytovatelé by měli přepsat příslušnou implementací.Providers should override with an appropriate implementation. cancellationTokenMůže být volitelně akceptovatelné.The cancellationToken can optionally be honored. Výchozí implementace vyvolá synchronní GetSchema(String, String[]) volání a vrátí dokončenou úlohu.The default implementation invokes the synchronous GetSchema(String, String[]) call and returns a completed task. Výchozí implementace vrátí zrušenou úlohu, pokud byla předána již zrušena cancellationToken .The default implementation will return a cancelled task if passed an already cancelled cancellationToken. Výjimky vyvolané nástrojem GetSchema(String, String[]) budou sděleny přes vrácenou vlastnost Exception úlohy.Exceptions thrown by GetSchema(String, String[]) will be communicated via the returned Task Exception property.

(Zděděno od DbConnection)
GetService(Type)

Vrátí objekt, který představuje službu poskytnutou Component nebo podle jeho Container .Returns an object that represents a service provided by the Component or by its Container.

(Zděděno od Component)
GetType()

Získá Type aktuální instanci.Gets the Type of the current instance.

(Zděděno od Object)
InitializeLifetimeService()
Zastaralé.

Získá objekt služby životnosti, který řídí zásady životního cyklu pro tuto instanci.Obtains a lifetime service object to control the lifetime policy for this instance.

(Zděděno od MarshalByRefObject)
MemberwiseClone()

Vytvoří kopii aktuálního seznamu Object .Creates a shallow copy of the current Object.

(Zděděno od Object)
MemberwiseClone(Boolean)

Vytvoří kopii aktuálního objektu bez podstruktury MarshalByRefObject .Creates a shallow copy of the current MarshalByRefObject object.

(Zděděno od MarshalByRefObject)
OnStateChange(StateChangeEventArgs)

Vyvolá StateChange událost.Raises the StateChange event.

(Zděděno od DbConnection)
Open()

Otevře připojení k databázi s nastavením vlastností, které určuje ConnectionString .Opens a database connection with the property settings specified by the ConnectionString.

OpenAsync()

Asynchronní verze nástroje Open() , která otevře připojení k databázi s nastavením určeným parametrem ConnectionString .An asynchronous version of Open(), which opens a database connection with the settings specified by the ConnectionString. Tato metoda vyvolá virtuální metodu OpenAsync(CancellationToken) s CancellationToken. None.This method invokes the virtual method OpenAsync(CancellationToken) with CancellationToken.None.

(Zděděno od DbConnection)
OpenAsync(CancellationToken)

Toto je asynchronní verze Open() .This is the asynchronous version of Open(). Poskytovatelé by měli přepsat příslušnou implementací.Providers should override with an appropriate implementation. Token zrušení lze volitelně akceptovat.The cancellation token can optionally be honored.

Výchozí implementace vyvolá synchronní Open() volání a vrátí dokončenou úlohu.The default implementation invokes the synchronous Open() call and returns a completed task. Výchozí implementace vrátí zrušenou úlohu, pokud byla předána již zrušená cancellationToken.The default implementation will return a cancelled task if passed an already cancelled cancellationToken. Výjimky vyvolané příkazem Open budou sděleny přes vrácenou vlastnost Exception úlohy.Exceptions thrown by Open will be communicated via the returned Task Exception property.

Nevolejte jiné metody a vlastnosti DbConnection objektu, dokud není vrácen dokončený úkol.Do not invoke other methods and properties of the DbConnection object until the returned Task is complete.

(Zděděno od DbConnection)
ReleaseObjectPool()

Označuje, že OleDbConnection fond objektů může být uvolněn při uvolnění posledního základního připojení.Indicates that the OleDbConnection object pool can be released when the last underlying connection is released.

ResetState()

Aktualizuje State vlastnost OleDbConnection objektu.Updates the State property of the OleDbConnection object.

ToString()

Vrátí řetězec, který představuje aktuální objekt.Returns a string that represents the current object.

(Zděděno od Object)
ToString()

Vrátí hodnotu String obsahující název Component , pokud existuje.Returns a String containing the name of the Component, if any. Tato metoda by neměla být přepsána.This method should not be overridden.

(Zděděno od Component)

Události

Disposed

Nastane, pokud je komponenta uvolněna voláním Dispose() metody.Occurs when the component is disposed by a call to the Dispose() method.

(Zděděno od Component)
InfoMessage

Vyvolá se v případě, že poskytovatel pošle upozornění nebo informační zprávu.Occurs when the provider sends a warning or an informational message.

StateChange

Vyvolá se v případě, že dojde ke změně stavu připojení.Occurs when the state of the connection changes.

StateChange

Vyvolá se v případě, že dojde ke změně stavu připojení.Occurs when the state of the connection changes.

(Zděděno od DbConnection)

Explicitní implementace rozhraní

ICloneable.Clone()

Popis tohoto člena naleznete v tématu Clone() .For a description of this member, see Clone().

IDbConnection.BeginTransaction()

Toto rozhraní API podporuje produktovou infrastrukturu a není určené k použití přímo z uživatelského kódu.

Zahájí databázovou transakci.Begins a database transaction.

IDbConnection.BeginTransaction()

Zahájí databázovou transakci.Begins a database transaction.

(Zděděno od DbConnection)
IDbConnection.BeginTransaction(IsolationLevel)

Toto rozhraní API podporuje produktovou infrastrukturu a není určené k použití přímo z uživatelského kódu.

Spustí databázovou transakci se zadanou úrovní izolace.Begins a database transaction with the specified isolation level.

IDbConnection.BeginTransaction(IsolationLevel)

Spustí databázovou transakci se zadanou úrovní izolace.Begins a database transaction with the specified isolation level.

(Zděděno od DbConnection)
IDbConnection.CreateCommand()

Toto rozhraní API podporuje produktovou infrastrukturu a není určené k použití přímo z uživatelského kódu.

Vytvoří a vrátí objekt příkazu přidružený k připojení.Creates and returns a command object associated with the connection.

IDbConnection.CreateCommand()

Vytvoří a vrátí DbCommand objekt, který je přidružený k aktuálnímu připojení.Creates and returns a DbCommand object that is associated with the current connection.

(Zděděno od DbConnection)

Platí pro