OleDbConnection Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("OleDbConnection is not AOT-compatible.")]
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, IDisposable
public sealed class OleDbConnection : System.Data.Common.DbConnection, ICloneable
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("OleDbConnection is not AOT-compatible.")>]
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
type OleDbConnection = class
inherit DbConnection
interface IDbConnection
interface IDisposable
interface ICloneable
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
- Dědičnost
- Atributy
- Implementuje
Příklady
Následující příklad vytvoří a OleDbCommandOleDbConnection. Je OleDbConnection otevřen a nastaven jako Connection pro OleDbCommand. Příklad pak zavolá ExecuteNonQuery a zavře připojení. K tomu se ExecuteNonQuery předává 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 zprostředkovatelem OLE DB nemusí být některé metody nebo vlastnosti objektu OleDbConnection k dispozici.
Při vytváření instance OleDbConnection, všechny vlastnosti jsou nastaveny na jejich počáteční hodnoty. Seznam těchto hodnot naleznete v konstruktoru OleDbConnection .
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é.
OleDbConnection Pokud je rozsah mimo rozsah, nezavře se. Proto musíte připojení explicitně zavřít voláním Close nebo Dispose nebo použitím objektu OleDbConnection v rámci Using příkazu.
Note
Pokud chcete nasadit vysoce výkonné aplikace, musíte použít sdružování připojení. Pokud používáte .NET Framework Zprostředkovatel dat 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 Zprostředkovatel dat pro OLE DB najdete v tématu OLE DB, ODBC a Oracle Connection Pooling.
Pokud je závažná OleDbException (například úroveň závažnosti SQL Server 20 nebo vyšší) generována metodou spuštění 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 zajišťuje, aby objekt používal požadavky na OleDbPermission zabezpečení. Uživatelé můžou pomocí objektu OleDbPermissionAttribute ověřit, že kód má dostatečná oprávnění. Uživatelé a správci můžou také použít Caspol.exe (Nástroj zásad zabezpečení přístupu kódu) 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í.
Note
Objekt OleDbConnection nepodporuje nastavení ani načítání dynamických vlastností specifických pro zprostředkovatele OLE DB. Podporovány jsou pouze vlastnosti, které lze předat pomocí připojovacího řetězce pro zprostředkovatele OLE DB.
Konstruktory
| Name | Description |
|---|---|
| OleDbConnection() |
Inicializuje novou instanci OleDbConnection třídy. |
| OleDbConnection(String) |
Inicializuje novou instanci OleDbConnection třídy se zadaným připojovacím řetězcem. |
Vlastnosti
| Name | Description |
|---|---|
| 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á ten 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 |
DbProviderFactory Získá pro to 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í řetězec. |
| ServerVersion |
Získá řetězec obsahující verzi serveru, ke kterému je klient připojen. |
| Site |
Získá nebo nastaví ISite objektu Component. (Zděděno od Component) |
| State |
Získá aktuální stav připojení. |
Metody
| Name | Description |
|---|---|
| BeginDbTransaction(IsolationLevel) |
Při přepsání v odvozené třídě, spustí databázové transakce. (Zděděno od DbConnection) |
| BeginTransaction() |
Spustí databázovou transakci s aktuální IsolationLevel hodnotou. |
| BeginTransaction(IsolationLevel) |
Spustí databázovou transakci se zadanou úrovní izolace. |
| ChangeDatabase(String) |
Změní aktuální databázi otevřeného OleDbConnectionsouboru . |
| Close() |
Zavře připojení ke zdroji dat. |
| CreateCommand() |
Vytvoří a vrátí OleDbCommand objekt přidružený k objektu 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í. (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() |
Uvolní všechny prostředky používané nástrojem Component. (Zděděno od Component) |
| Dispose(Boolean) |
Uvolní nespravované prostředky používané Component a volitelně uvolní spravované prostředky. (Zděděno od Component) |
| 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 OleDbConnectionobjektu . |
| 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í. |
| GetSchema(String) |
Vrátí informace o schématu pro zdroj dat tohoto OleDbConnection pomocí zadaného řetězce pro název schématu. |
| GetService(Type) |
Vrátí objekt, který představuje službu poskytovanou objektem 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 MarshalByRefObject objektu. (Zděděno od MarshalByRefObject) |
| OnStateChange(StateChangeEventArgs) |
StateChange Vyvolá událost. (Zděděno od DbConnection) |
| Open() |
Otevře připojení k databázi s nastavením vlastnosti určené parametrem 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í Open() volání 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 objektu |
| ReleaseObjectPool() |
Označuje, že fond OleDbConnection objektů lze vydat při vydání posledního základního připojení. |
| ResetState() |
State Aktualizuje vlastnost objektuOleDbConnection. |
| ToString() |
String Vrátí hodnotu obsahující název Component, pokud existuje. Tato metoda by neměla být přepsána. (Zděděno od Component) |
Událost
| Name | Description |
|---|---|
| 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í
| Name | Description |
|---|---|
| ICloneable.Clone() |
Popis tohoto člena naleznete 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í DbCommand objekt přidružený k aktuálnímu připojení. (Zděděno od DbConnection) |