OdbcConnection Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Egy adatforráshoz való nyílt kapcsolatot jelöl.
public ref class OdbcConnection sealed : System::Data::Common::DbConnection, ICloneable
public ref class OdbcConnection sealed : System::ComponentModel::Component, ICloneable, IDisposable, System::Data::IDbConnection
public sealed class OdbcConnection : System.Data.Common.DbConnection, ICloneable
public sealed class OdbcConnection : System.ComponentModel.Component, ICloneable, IDisposable, System.Data.IDbConnection
type OdbcConnection = class
inherit DbConnection
interface ICloneable
type OdbcConnection = class
inherit Component
interface ICloneable
interface IDbConnection
interface IDisposable
Public NotInheritable Class OdbcConnection
Inherits DbConnection
Implements ICloneable
Public NotInheritable Class OdbcConnection
Inherits Component
Implements ICloneable, IDbConnection, IDisposable
- Öröklődés
- Öröklődés
- Öröklődés
- Megvalósítás
Példák
Az alábbi példa létrehoz egy OdbcCommand és egy OdbcConnection. Ez OdbcConnection meg van nyitva, és tulajdonságként Connection van beállítva. A példa ezután meghívja ExecuteNonQuery, majd bezárja a kapcsolatot. Ehhez a ExecuteNonQuery egy kapcsolati karakterlánc és egy SQL INSERT utasítást tartalmazó lekérdezési sztringet ad át.
static private void InsertRow(string connectionString)
{
string queryString =
"INSERT INTO Customers (CustomerID, CompanyName) Values('NWIND', 'Northwind Traders')";
OdbcCommand command = new OdbcCommand(queryString);
using (OdbcConnection connection = new OdbcConnection(connectionString))
{
command.Connection = connection;
connection.Open();
command.ExecuteNonQuery();
// The connection is automatically closed at
// the end of the Using block.
}
}
Private Sub InsertRow(ByVal connectionString As String)
Dim queryString As String = _
"INSERT INTO Customers (CustomerID, CompanyName) Values('NWIND', 'Northwind Traders')"
Dim command As New OdbcCommand(queryString)
Using connection As New OdbcConnection(connectionString)
command.Connection = connection
connection.Open()
command.ExecuteNonQuery()
' The connection is automatically closed at
' the end of the Using block.
End Using
End Sub
Megjegyzések
A OdbcConnection objektum egy kapcsolati karakterlánc vagy ODBC-adatforrásnévvel (DSN) létrehozott adatforráshoz való egyedi kapcsolatot jelöl. Egy ügyfél-/kiszolgáló-adatbázisrendszer esetén ez egyenértékű a kiszolgálóval létesített hálózati kapcsolattal. A natív ODBC-illesztőprogram által támogatott funkcióktól függően előfordulhat, hogy egy OdbcConnection objektum bizonyos metódusai vagy tulajdonságai nem érhetők el.
Az OdbcConnection objektum natív erőforrásokat, például ODBC-környezetet és kapcsolatkezelőket használ. A nyitott OdbcConnection objektumokat mindig explicit módon zárja be úgy, hogy meghívja Close vagy megsemmisíti , mielőtt az objektum kiesik a OdbcConnection hatókörből, vagy egy utasításba Using helyezi a kapcsolatot. Ha ezt nem teszi meg, az a natív erőforrások szemétgyűjtésre való felszabadítását teszi lehetővé. Lehet, hogy nem szabadít fel azonnal. Ez pedig azt eredményezheti, hogy a mögöttes illesztőprogram elfogy az erőforrásokból, vagy eléri a maximális korlátot. Ez időszakos hibákat eredményezett. Előfordulhat például, hogy -related hibákat tapasztal Maximum Connections , miközben sok kapcsolat arra vár, hogy a szemétgyűjtő törölje őket. A kapcsolatok explicit lezárása lehetővé teszi a natív erőforrások hatékonyabb használatát, fokozza a méretezhetőséget és javítja az alkalmazások általános teljesítményét.
Note
A nagy teljesítményű alkalmazások üzembe helyezéséhez gyakran használnia kell a kapcsolatkészletezést. Az ODBC-hez készült .NET-keretrendszer Data Provider használatakor azonban nem kell engedélyeznie a kapcsolatkészletezést, mert a szolgáltató ezt automatikusan kezeli.
Ha a Execute osztály egyik OdbcCommand metódusa végzetes OdbcException okoz (például 20 vagy nagyobb SQL Server súlyossági szint), a OdbcConnection bezárulhat. A felhasználó azonban újra megnyithatja a kapcsolatot, és folytathatja azt.
Az objektum egy példányát létrehozó alkalmazás megkövetelheti, hogy a OdbcConnection deklaratív vagy imperatív biztonsági követelmények megadásával minden közvetlen és közvetett hívó rendelkezzen megfelelő engedéllyel a kódhoz. OdbcConnection biztonsági igényeket hoz létre az OdbcPermission objektum használatával. A felhasználók az objektum használatával OdbcPermissionAttribute ellenőrizhetik, hogy a kódjuk rendelkezik-e megfelelő engedélyekkel. A felhasználók és a rendszergazdák a Code Access biztonsági házirend eszközével (Caspol.exe) is módosíthatják a biztonsági szabályzatot a számítógép, a felhasználó és a vállalati szinten. További információ: Code Access Security és ADO.NET.
Az adatforrásból érkező figyelmeztető és tájékoztató üzenetek kezeléséről további információt a Kapcsolati események című témakörben talál.
Konstruktorok
| Name | Description |
|---|---|
| OdbcConnection() |
Inicializálja a OdbcConnection osztály új példányát. |
| OdbcConnection(String) |
Inicializálja a OdbcConnection osztály új példányát a megadott kapcsolati karakterlánc. |
Tulajdonságok
| Name | Description |
|---|---|
| CanRaiseEvents |
Beolvas egy értéket, amely jelzi, hogy az összetevő képes-e eseményt létrehozni. (Öröklődés forrása Component) |
| ConnectionString |
Lekéri vagy beállítja az adatforrás megnyitásához használt sztringet. |
| ConnectionTimeout |
Lekéri vagy beállítja a várakozási időt (másodpercben), miközben megpróbál kapcsolatot létesíteni, mielőtt megszakítja a kísérletet, és hibát okozna. |
| Container |
Lekéri a IContainer .Component (Öröklődés forrása Component) |
| Database |
Lekéri az aktuális adatbázis vagy a kapcsolat megnyitása után használni kívánt adatbázis nevét. |
| DataSource |
Lekéri az adatforrás kiszolgálónevét vagy fájlnevét. |
| DbProviderFactory |
Megkapja ezt DbProviderFactorya DbConnection . (Öröklődés forrása DbConnection) |
| DesignMode |
Olyan értéket kap, amely jelzi, hogy az Component aktuálisan tervezési módban van-e. (Öröklődés forrása Component) |
| Driver |
Lekéri az aktuális kapcsolathoz megadott ODBC-illesztő nevét. |
| Events |
Lekéri az ehhez Componentcsatolt eseménykezelők listáját. (Öröklődés forrása Component) |
| ServerVersion |
Lekéri a kiszolgáló azon verzióját tartalmazó sztringet, amelyhez az ügyfél csatlakozik. |
| Site |
Lekéri vagy megadja a ISite értékét a Component-hez. (Öröklődés forrása Component) |
| State |
Lekéri a kapcsolat aktuális állapotát. |
Metódusok
| Name | Description |
|---|---|
| BeginDbTransaction(IsolationLevel) |
Ha felülbírált egy származtatott osztályban, elindít egy adatbázis-tranzakciót. (Öröklődés forrása DbConnection) |
| BeginTransaction() |
Tranzakció indítása az adatforrásban. |
| BeginTransaction(IsolationLevel) |
Tranzakció indítása az adatforrásban a megadott IsolationLevel értékkel. |
| ChangeDatabase(String) |
Módosítja a megnyitott OdbcConnectionadatbázishoz társított aktuális adatbázist. |
| Close() |
Bezárja az adatforráshoz való kapcsolatot. |
| CreateCommand() |
Létrehoz és visszaad egy OdbcCommand objektumot, amely a OdbcConnection. |
| CreateDbCommand() |
Ha felül van bírálva egy származtatott osztályban, létrehoz és visszaad egy DbCommand , az aktuális kapcsolathoz társított objektumot. (Öröklődés forrása DbConnection) |
| CreateObjRef(Type) |
Létrehoz egy objektumot, amely tartalmazza a távoli objektumokkal való kommunikációhoz használt proxy létrehozásához szükséges összes releváns információt. (Öröklődés forrása MarshalByRefObject) |
| Dispose() |
Felszabadítja a .-hez használt összes erőforrást Component. (Öröklődés forrása Component) |
| Dispose(Boolean) |
Felszabadítja a felügyelt erőforrások által Component használt nem felügyelt erőforrásokat, és opcionálisan felszabadítja a felügyelt erőforrásokat. (Öröklődés forrása Component) |
| EnlistDistributedTransaction(ITransaction) |
A megadott tranzakciót elosztott tranzakcióként veszi fel. |
| EnlistTransaction(Transaction) |
A megadott tranzakciót elosztott tranzakcióként veszi fel. |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetLifetimeService() |
Elavult.
Lekéri a példány élettartamszabályzatát vezérlő aktuális élettartam-szolgáltatásobjektumot. (Öröklődés forrása MarshalByRefObject) |
| GetSchema() |
Ennek az adatforrásnak OdbcConnectiona sémaadatait adja vissza. |
| GetSchema(String, String[]) |
Az adatforrás OdbcConnection sémaadatait adja vissza a sémanévhez megadott sztring és a korlátozási értékek megadott sztringtömbjének használatával. |
| GetSchema(String) |
A sémanév megadott nevével adja vissza az adatforrás OdbcConnection sémaadatait. |
| GetService(Type) |
Olyan objektumot ad vissza, amely az általa vagy annak által ComponentContainernyújtott szolgáltatást jelöli. (Öröklődés forrása Component) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| InitializeLifetimeService() |
Elavult.
Beolvas egy élettartam-szolgáltatásobjektumot a példány élettartam-szabályzatának szabályozásához. (Öröklődés forrása MarshalByRefObject) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| MemberwiseClone(Boolean) |
Az aktuális MarshalByRefObject objektum sekély másolatát hozza létre. (Öröklődés forrása MarshalByRefObject) |
| OnStateChange(StateChangeEventArgs) |
Az eseményt emeli StateChange ki. (Öröklődés forrása DbConnection) |
| Open() |
Kapcsolatot nyit meg egy adatforráshoz a megadott tulajdonságbeállításokkal ConnectionString. |
| OpenAsync() |
A |
| OpenAsync(CancellationToken) |
Ez aszinkron verziója.Open() A szolgáltatóknak felül kell bírálni a megfelelő megvalósítást. A lemondási jogkivonat tetszés szerint tiszteletben tartható. Az alapértelmezett implementáció meghívja a szinkron Open() hívást, és egy befejezett feladatot ad vissza. Az alapértelmezett implementáció egy megszakított feladatot ad vissza, ha egy már törölt cancellationTokent adott át. A Megnyitás által okozott kivételeket a rendszer a visszaadott Tevékenységkivétel tulajdonságon keresztül közli. Ne hívja meg az |
| ReleaseObjectPool() |
Azt jelzi, hogy az ODBC Driver Manager környezeti leírója az utolsó mögöttes kapcsolat felszabadításakor szabadulhat fel. |
| ToString() |
String A ( ha van) nevet tartalmazó értéket Componentad vissza. Ezt a módszert nem szabad felülírni. (Öröklődés forrása Component) |
esemény
| Name | Description |
|---|---|
| Disposed |
Akkor fordul elő, ha az összetevőt a metódus hívása megsemmisíti Dispose() . (Öröklődés forrása Component) |
| InfoMessage |
Akkor fordul elő, ha az ODBC-illesztő figyelmeztetést vagy tájékoztató üzenetet küld. |
| StateChange |
A kapcsolat állapota megváltozik. |
| StateChange |
A kapcsolat állapota megváltozik. (Öröklődés forrása DbConnection) |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| ICloneable.Clone() |
Ennek a tagnak a leírását lásd Clone(): . |
| IDbConnection.BeginTransaction() |
Ez az API a termékinfrastruktúrát támogatja, és közvetlenül a kódból nem használható. Adatbázis-tranzakciót indít el. |
| IDbConnection.BeginTransaction() |
Adatbázis-tranzakciót indít el. (Öröklődés forrása DbConnection) |
| IDbConnection.BeginTransaction(IsolationLevel) |
Ez az API a termékinfrastruktúrát támogatja, és közvetlenül a kódból nem használható. A megadott elkülönítési szinttel elindít egy adatbázis-tranzakciót. |
| IDbConnection.BeginTransaction(IsolationLevel) |
A megadott elkülönítési szinttel elindít egy adatbázis-tranzakciót. (Öröklődés forrása DbConnection) |
| IDbConnection.CreateCommand() |
Ez az API a termékinfrastruktúrát támogatja, és közvetlenül a kódból nem használható. Létrehoz és visszaad egy, a kapcsolathoz társított parancsobjektumot. |
| IDbConnection.CreateCommand() |
Létrehoz és visszaad egy DbCommand objektumot, amely az aktuális kapcsolathoz van társítva. (Öröklődés forrása DbConnection) |