Sdílet prostřednictvím


OleDbConnection Třída

Definice

Představuje otevřené připojení ke zdroji dat.

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
Dědičnost
Dědičnost
Implementuje

Příklady

Následující příklad vytvoří OleDbCommand a OleDbConnection. OleDbConnection se otevře a nastaví jako Connection pro OleDbCommand. Příklad pak zavolá ExecuteNonQuery a zavře připojení. K tomu se ExecuteNonQuery předá připojovací řetězec a řetězec dotazu, který je příkazem 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

Poznámky

Objekt OleDbConnection představuje jedinečné připojení ke zdroji dat. V případě databázového systému klienta nebo serveru je ekvivalentem síťového připojení k serveru. V závislosti na funkcích podporovaných nativním poskytovatelem OLE DB nemusí být některé metody nebo vlastnosti objektu OleDbConnection k dispozici.

Při vytváření instance OleDbConnectionjsou všechny vlastnosti nastaveny na jejich počáteční hodnoty. Seznam těchto hodnot najdete v OleDbConnection konstruktoru.

Můžete otevřít více než jeden DataReader na jednom OleDbConnection. Pokud zprostředkovatel OLE DB, který používáte, nepodporuje více než jednu čtečku dat v jednom připojení, poskytovatel implicitně otevře další připojení pro každé.

Pokud OleDbConnection nedosáhne rozsahu, nezavře se. Proto musíte připojení explicitně zavřít voláním Close nebo Disposenebo použitím objektu OleDbConnection v rámci příkazu Using.

Poznámka

Pokud chcete nasadit vysoce výkonné aplikace, musíte použít sdružování připojení. Při použití zprostředkovatele dat rozhraní .NET Framework pro OLE DB není nutné povolit sdružování připojení, protože zprostředkovatel to spravuje automaticky. Další informace o použití sdružování připojení s rozhraním .NET Framework Data Provider pro OLE DB naleznete v tématu OLE DB, ODBC a Oracle Connection Pooling.

Pokud je závažná OleDbException (například úroveň závažnosti SQL Serveru 20 nebo vyšší) vygenerována metodou, která spouští OleDbCommand, může být OleDbConnection uzavřena. Uživatel ale může znovu otevřít připojení a pokračovat.

Aplikace, která vytvoří instanci objektu OleDbConnection, může vyžadovat, aby všichni přímá a nepřímí volající měli dostatečná oprávnění k kódu nastavením deklarativních nebo imperativních požadavků na zabezpečení. OleDbConnection vyžaduje zabezpečení pomocí objektu OleDbPermission. Uživatelé můžou pomocí objektu OleDbPermissionAttribute ověřit, že má kód dostatečná oprávnění. Uživatelé a správci mohou také použít Caspol.exe (Code Access Security Policy Tool) k úpravě zásad zabezpečení na úrovni počítače, uživatele a podniku. Další informace najdete v tématu Zabezpečení přístupu kódu a ADO.NET.

Další informace o zpracování upozornění a informačních zpráv z datového serveru naleznete v tématu Události připojení.

Poznámka

Objekt OleDbConnection nepodporuje nastavení ani načítání dynamických vlastností specifických pro zprostředkovatele OLE DB. Podporují se pouze vlastnosti, které lze předat v připojovacím řetězci pro zprostředkovatele OLE DB.

Konstruktory

OleDbConnection()

Inicializuje novou instanci OleDbConnection třídy.

OleDbConnection(String)

Inicializuje novou instanci OleDbConnection třídy se zadaným připojovacím řetězcem.

Vlastnosti

CanCreateBatch

Získá hodnotu, která označuje, zda tato DbConnection instance podporuje DbBatch třídy.

(Zděděno od DbConnection)
CanRaiseEvents

Získá hodnotu určující, zda komponenta může vyvolat událost.

(Zděděno od Component)
ConnectionString

Získá nebo nastaví řetězec použitý k otevření databáze.

ConnectionTimeout

Získá čas čekání (v sekundách) při pokusu o navázání připojení před ukončením pokusu a vygenerováním chyby.

Container

Získá IContainer, který obsahuje 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í.

DataSource

Získá název serveru nebo název souboru zdroje dat.

DbProviderFactory

Získá DbProviderFactory pro tento DbConnection.

(Zděděno od DbConnection)
DesignMode

Získá hodnotu, která označuje, zda Component je aktuálně v režimu návrhu.

(Zděděno od Component)
Events

Získá seznam obslužných rutin událostí, které jsou připojeny k tomuto Component.

(Zděděno od Component)
Provider

Získá název zprostředkovatele OLE DB zadaný v klauzuli "Provider= " připojovacího řetězce.

ServerVersion

Získá řetězec obsahující verzi serveru, ke kterému je klient připojen.

Site

Získá nebo nastaví ISiteComponent.

(Zděděno od Component)
State

Získá aktuální stav připojení.

Metody

BeginDbTransaction(IsolationLevel)

Při přepsání v odvozené třídě, spustí databázové transakce.

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

Asynchronně spustí databázovou transakci.

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

Spustí databázovou transakci s aktuální hodnotou IsolationLevel.

BeginTransaction(IsolationLevel)

Spustí databázovou transakci se zadanou úrovní izolace.

BeginTransactionAsync(CancellationToken)

Asynchronní zahájení databázové transakce.

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

Asynchronní zahájení databázové transakce.

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

Změní aktuální databázi otevřeného OleDbConnection.

ChangeDatabaseAsync(String, CancellationToken)

Asynchronně změní aktuální databázi pro otevřené připojení.

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

Zavře připojení ke zdroji dat.

CloseAsync()

Asynchronně zavře připojení k databázi.

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

Vrátí novou instanci třídy zprostředkovatele, která implementuje třídu DbBatch.

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

Vytvoří a vrátí objekt OleDbCommand přidružený k OleDbConnection.

CreateDbBatch()

Při přepsání v odvozené třídě vrátí novou instanci třídy zprostředkovatele, která implementuje DbBatch třídy.

(Zděděno od DbConnection)
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í.

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

Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy serveru sloužícího ke komunikaci se vzdáleným objektem.

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

Provádí úlohy definované aplikací související s uvolněním, uvolněním nebo resetováním nespravovaných prostředků.

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

Uvolní všechny prostředky používané Component.

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

Uvolní nespravované prostředky používané DbConnection a volitelně uvolní spravované prostředky.

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

Uvolní nespravované prostředky používané Component a volitelně uvolní spravované prostředky.

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

Asynchronně dispozuje objekt připojení.

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

Zapsá do zadané transakce jako distribuovanou transakci.

EnlistTransaction(Transaction)

Zapsá do zadané transakce jako distribuovanou transakci.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

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

Slouží jako výchozí funkce hash.

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

Načte objekt služby aktuální životnosti, který řídí zásady životnosti pro tuto instanci.

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

Vrátí informace o schématu ze zdroje dat podle identifikátoru GUID a po použití zadaných omezení.

GetSchema()

Vrátí informace o schématu pro zdroj dat tohoto OleDbConnection.

GetSchema(String)

Vrátí informace o schématu pro zdroj dat tohoto OleDbConnection pomocí zadaného řetězce pro název schématu.

GetSchema(String, String[])

Vrátí informace o schématu pro zdroj dat tohoto OleDbConnection pomocí zadaného řetězce pro název schématu a zadané pole řetězců pro hodnoty omezení.

GetSchemaAsync(CancellationToken)

Toto je asynchronní verze GetSchema(). Poskytovatelé by měli přepsat příslušnou implementací. Volitelně je možné respektovat cancellationToken. Výchozí implementace vyvolá synchronní volání GetSchema() a vrátí dokončený úkol. Výchozí implementace vrátí zrušený úkol, pokud již byla zrušena cancellationToken. Výjimky vyvolané GetSchema() budou předány prostřednictvím vrácené vlastnosti Exception úlohy.

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

Toto je asynchronní verze GetSchema(String). Poskytovatelé by měli přepsat příslušnou implementací. Volitelně je možné respektovat cancellationToken. Výchozí implementace vyvolá synchronní volání GetSchema(String) a vrátí dokončený úkol. Výchozí implementace vrátí zrušený úkol, pokud již byla zrušena cancellationToken. Výjimky vyvolané GetSchema(String) budou předány prostřednictvím vrácené vlastnosti Exception úlohy.

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

Toto je asynchronní verze GetSchema(String, String[]). Poskytovatelé by měli přepsat příslušnou implementací. Volitelně je možné respektovat cancellationToken. Výchozí implementace vyvolá synchronní volání GetSchema(String, String[]) a vrátí dokončený úkol. Výchozí implementace vrátí zrušený úkol, pokud již byla zrušena cancellationToken. Výjimky vyvolané GetSchema(String, String[]) budou předány prostřednictvím vrácené vlastnosti Exception úlohy.

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

Vrátí objekt, který představuje službu poskytovanou Component nebo jeho Container.

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

Získá Type aktuální instance.

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

Získá objekt služby životnosti pro řízení zásad životnosti pro tuto instanci.

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

Vytvoří mělkou kopii aktuálního Object.

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

Vytvoří mělkou kopii aktuálního objektu MarshalByRefObject.

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

Vyvolá událost StateChange.

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

Otevře připojení k databázi s nastavením vlastností určeným ConnectionString.

OpenAsync()

Asynchronní verze Open(), která otevře připojení databáze s nastavením určeným ConnectionString. Tato metoda vyvolá virtuální metodu OpenAsync(CancellationToken) pomocí CancellationToken.None.

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

Toto je asynchronní verze Open(). Poskytovatelé by měli přepsat příslušnou implementací. Token zrušení lze volitelně respektovat.

Výchozí implementace vyvolá synchronní volání Open() a vrátí dokončený úkol. Výchozí implementace vrátí zrušený úkol, pokud již bylo zrušeno cancellationToken. Výjimky vyvolané příkazem Open budou oznámeny prostřednictvím vrácené vlastnosti Exception úkolu.

Nevyvolejte jiné metody a vlastnosti DbConnection objektu, dokud vrácená úloha není dokončena.

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

Označuje, že po uvolnění posledního základního připojení je možné uvolnit fond objektů OleDbConnection.

ResetState()

Aktualizuje vlastnost State objektu OleDbConnection.

ToString()

Vrátí String obsahující název Component, pokud existuje. Tato metoda by neměla být přepsána.

(Zděděno od Component)

Událost

Disposed

Nastane, když komponenta je uvolněna voláním Dispose() metody.

(Zděděno od Component)
InfoMessage

Nastane, když poskytovatel odešle upozornění nebo informační zprávu.

StateChange

Nastane, když se změní stav připojení.

StateChange

Nastane, když se změní stav připojení.

(Zděděno od DbConnection)

Explicitní implementace rozhraní

ICloneable.Clone()

Popis tohoto člena najdete v tématu Clone().

IDbConnection.BeginTransaction()

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

Začne databázovou transakci.

IDbConnection.BeginTransaction()

Začne databázovou transakci.

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

Zahájí transakci databáze se zadanou úrovní izolace.

IDbConnection.BeginTransaction(IsolationLevel)

Zahájí transakci databáze se zadanou úrovní izolace.

(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í.

IDbConnection.CreateCommand()

Vytvoří a vrátí objekt DbCommand, který je přidružen k aktuálnímu připojení.

(Zděděno od DbConnection)

Metody rozšíření

ConfigureAwait(IAsyncDisposable, Boolean)

Konfiguruje, jak čekají na úlohy vrácené z asynchronního jednorázového použití.

Platí pro

Viz také