OdbcConnection Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje otwarte połączenie ze źródłem danych.
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
- Dziedziczenie
- Dziedziczenie
- Implementuje
Przykłady
Poniższy przykład tworzy element OdbcCommand i .OdbcConnection Obiekt OdbcConnection jest otwierany i ustawiany jako Connection właściwość. W tym przykładzie jest wywoływana ExecuteNonQueryfunkcja , a następnie zamyka połączenie. Aby to osiągnąć, ExecuteNonQuery jest przekazywany parametry połączenia i ciąg zapytania, który jest instrukcją SQL INSERT.
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
Uwagi
OdbcConnection Obiekt reprezentuje unikatowe połączenie ze źródłem danych utworzonym przy użyciu nazwy źródła danych parametry połączenia lub ODBC (DSN). W systemie bazy danych klienta/serwera jest on odpowiednikiem połączenia sieciowego z serwerem. W zależności od funkcjonalności obsługiwanej przez natywny sterownik ODBC niektóre metody lub właściwości OdbcConnection obiektu mogą nie być dostępne.
Obiekt OdbcConnection używa zasobów natywnych, takich jak środowisko ODBC i uchwyty połączeń. Zawsze należy jawnie zamknąć wszystkie otwarte OdbcConnection obiekty przez wywołanie Close lub usuwanie przed OdbcConnection wyjściem Using
obiektu z zakresu lub przez umieszczenie połączenia w instrukcji. Nie powoduje to zwolnienia tych zasobów natywnych do odzyskiwania pamięci. To może nie uwolnić ich natychmiast. Z kolei może to spowodować, że podstawowy sterownik zabraknie zasobów lub osiągnie maksymalny limit. Spowodowało to sporadyczne błędy. Na przykład mogą wystąpić Maximum Connections
błędy związane z błędami, podczas gdy wiele połączeń oczekuje na usunięcie przez moduł odśmiecający pamięci. Jawne zamykanie połączeń umożliwia bardziej wydajne wykorzystanie zasobów natywnych, zwiększenie skalowalności i poprawę ogólnej wydajności aplikacji.
Uwaga
Aby wdrożyć aplikacje o wysokiej wydajności, często należy używać puli połączeń. Jednak w przypadku korzystania z dostawcy danych .NET Framework dla ODBC nie trzeba włączać puli połączeń, ponieważ dostawca zarządza tym automatycznie.
Jeśli jedna z Execute
metod OdbcCommand klasy powoduje krytyczny OdbcException (na przykład SQL Server poziom ważności 20 lub większy), OdbcConnection może zostać zamknięty. Jednak użytkownik może ponownie otworzyć połączenie i kontynuować.
Aplikacja, która tworzy wystąpienie OdbcConnection obiektu, może wymagać od wszystkich wywołań bezpośrednich i pośrednich, aby mieć wystarczające uprawnienia do kodu, ustawiając deklaratywne lub imperatywne wymagania dotyczące zabezpieczeń. OdbcConnection tworzy wymagania dotyczące zabezpieczeń przy użyciu OdbcPermission obiektu . Użytkownicy mogą sprawdzić, czy kod ma wystarczające uprawnienia przy użyciu OdbcPermissionAttribute obiektu. Użytkownicy i administratorzy mogą również używać narzędzia zasad zabezpieczeń dostępu kodu (Caspol.exe), aby zmodyfikować zasady zabezpieczeń na poziomie komputera, użytkownika i przedsiębiorstwa. Aby uzyskać więcej informacji, zobacz Zabezpieczenia dostępu do kodu i ADO.NET.
Aby uzyskać więcej informacji na temat obsługi komunikatów ostrzegawczych i informacyjnych ze źródła danych, zobacz Zdarzenia połączenia.
Konstruktory
OdbcConnection() |
Inicjuje nowe wystąpienie klasy OdbcConnection. |
OdbcConnection(String) |
Inicjuje OdbcConnection nowe wystąpienie klasy z określonym parametry połączenia. |
Właściwości
CanCreateBatch |
Pobiera wartość wskazującą, czy to DbConnection wystąpienie obsługuje klasę DbBatch . (Odziedziczone po DbConnection) |
CanRaiseEvents |
Pobiera wartość wskazującą, czy składnik może zgłosić zdarzenie. (Odziedziczone po Component) |
ConnectionString |
Pobiera lub ustawia ciąg używany do otwierania źródła danych. |
ConnectionTimeout |
Pobiera lub ustawia czas oczekiwania (w sekundach) podczas próby nawiązania połączenia przed zakończeniem próby i wygenerowaniem błędu. |
Container |
Pobiera element IContainer zawierający element Component. (Odziedziczone po Component) |
Database |
Pobiera nazwę bieżącej bazy danych lub bazy danych do użycia po otwarciu połączenia. |
DataSource |
Pobiera nazwę serwera lub nazwę pliku źródła danych. |
DbProviderFactory |
Pobiera element DbProviderFactory dla tego pliku DbConnection. (Odziedziczone po DbConnection) |
DesignMode |
Pobiera wartość wskazującą, czy Component element jest obecnie w trybie projektowania. (Odziedziczone po Component) |
Driver |
Pobiera nazwę sterownika ODBC określonego dla bieżącego połączenia. |
Events |
Pobiera listę programów obsługi zdarzeń dołączonych do tego Componentelementu . (Odziedziczone po Component) |
ServerVersion |
Pobiera ciąg zawierający wersję serwera, z którym jest połączony klient. |
Site |
Pobiera lub ustawia ISite element .Component (Odziedziczone po Component) |
State |
Pobiera bieżący stan połączenia. |
Metody
BeginDbTransaction(IsolationLevel) |
Po zastąpieniu klasy pochodnej uruchamia transakcję bazy danych. (Odziedziczone po DbConnection) |
BeginDbTransactionAsync(IsolationLevel, CancellationToken) |
Asynchronicznie uruchamia transakcję bazy danych. (Odziedziczone po DbConnection) |
BeginTransaction() |
Uruchamia transakcję w źródle danych. |
BeginTransaction(IsolationLevel) |
Uruchamia transakcję w źródle danych z określoną IsolationLevel wartością. |
BeginTransactionAsync(CancellationToken) |
Asynchronicznie rozpoczyna transakcję bazy danych. (Odziedziczone po DbConnection) |
BeginTransactionAsync(IsolationLevel, CancellationToken) |
Asynchronicznie rozpoczyna transakcję bazy danych. (Odziedziczone po DbConnection) |
ChangeDatabase(String) |
Zmienia bieżącą bazę danych skojarzona z otwartym plikiem OdbcConnection. |
ChangeDatabaseAsync(String, CancellationToken) |
Asynchronicznie zmienia bieżącą bazę danych dla otwartego połączenia. (Odziedziczone po DbConnection) |
Close() |
Zamyka połączenie ze źródłem danych. |
CloseAsync() |
Asynchronicznie zamyka połączenie z bazą danych. (Odziedziczone po DbConnection) |
CreateBatch() |
Zwraca nowe wystąpienie klasy dostawcy, która implementuje klasę DbBatch . (Odziedziczone po DbConnection) |
CreateCommand() |
Tworzy i zwraca OdbcCommand obiekt skojarzony z obiektem OdbcConnection. |
CreateDbBatch() |
Po zastąpieniu klasy pochodnej zwraca nowe wystąpienie klasy dostawcy, które implementuje klasę DbBatch . (Odziedziczone po DbConnection) |
CreateDbCommand() |
Po zastąpieniu klasy pochodnej tworzy i zwraca DbCommand obiekt skojarzony z bieżącym połączeniem. (Odziedziczone po DbConnection) |
CreateObjRef(Type) |
Tworzy obiekt zawierający wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikowania się z obiektem zdalnym. (Odziedziczone po MarshalByRefObject) |
Dispose() |
Wykonuje zdefiniowane przez aplikację zadania skojarzone ze zwalnianiem lub resetowaniem zasobów niezarządzanych. (Odziedziczone po DbConnection) |
Dispose() |
Zwalnia wszelkie zasoby używane przez element Component. (Odziedziczone po Component) |
Dispose(Boolean) |
Zwalnia zasoby niezarządzane używane przez element DbConnection i opcjonalnie zwalnia zasoby zarządzane. (Odziedziczone po DbConnection) |
Dispose(Boolean) |
Zwalnia zasoby niezarządzane używane przez element Component i opcjonalnie zwalnia zasoby zarządzane. (Odziedziczone po Component) |
DisposeAsync() |
Asynchronicznie dysponuje obiekt połączenia. (Odziedziczone po DbConnection) |
EnlistDistributedTransaction(ITransaction) |
Enlists w określonej transakcji jako transakcji rozproszonej. |
EnlistTransaction(Transaction) |
Enlists w określonej transakcji jako transakcji rozproszonej. |
EnlistTransaction(Transaction) |
Enlists w określonej transakcji. (Odziedziczone po DbConnection) |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetLifetimeService() |
Przestarzałe.
Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia. (Odziedziczone po MarshalByRefObject) |
GetSchema() |
Zwraca informacje o schemacie dla źródła danych tego OdbcConnectionelementu . |
GetSchema(String) |
Zwraca informacje o schemacie dla źródła OdbcConnection danych przy użyciu określonej nazwy schematu. |
GetSchema(String, String[]) |
Zwraca informacje o schemacie dla źródła OdbcConnection danych przy użyciu określonego ciągu dla nazwy schematu i określonej tablicy ciągów dla wartości ograniczeń. |
GetSchemaAsync(CancellationToken) |
Jest to asynchroniczna wersja programu GetSchema().
Dostawcy powinni zastąpić odpowiednią implementacją.
Opcjonalnie |
GetSchemaAsync(String, CancellationToken) |
Jest to asynchroniczna wersja programu GetSchema(String).
Dostawcy powinni zastąpić odpowiednią implementacją.
Opcjonalnie |
GetSchemaAsync(String, String[], CancellationToken) |
Jest to asynchroniczna wersja programu GetSchema(String, String[]).
Dostawcy powinni zastąpić odpowiednią implementacją.
Opcjonalnie |
GetService(Type) |
Zwraca obiekt reprezentujący usługę dostarczaną przez Component obiekt lub przez obiekt Container. (Odziedziczone po Component) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
InitializeLifetimeService() |
Przestarzałe.
Uzyskuje obiekt usługi okresu istnienia, aby kontrolować zasady okresu istnienia dla tego wystąpienia. (Odziedziczone po MarshalByRefObject) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
MemberwiseClone(Boolean) |
Tworzy płytkią kopię bieżącego MarshalByRefObject obiektu. (Odziedziczone po MarshalByRefObject) |
OnStateChange(StateChangeEventArgs) |
StateChange Zgłasza zdarzenie. (Odziedziczone po DbConnection) |
Open() |
Otwiera połączenie ze źródłem danych z ustawieniami właściwości określonymi przez ConnectionStringelement . |
OpenAsync() |
Asynchroniczna wersja programu Open(), która otwiera połączenie bazy danych z ustawieniami określonymi przez ConnectionStringelement . Ta metoda wywołuje metodę OpenAsync(CancellationToken) wirtualną z elementem CancellationToken.None. (Odziedziczone po DbConnection) |
OpenAsync(CancellationToken) |
Jest to asynchroniczna wersja programu Open(). Dostawcy powinni zastąpić odpowiednią implementacją. Token anulowania można opcjonalnie honorować. Domyślna implementacja wywołuje wywołanie synchroniczne Open() i zwraca ukończone zadanie. Domyślna implementacja zwróci anulowane zadanie, jeśli przekazano już anulowane anulowanieToken. Wyjątki zgłaszane przez program Open będą przekazywane za pośrednictwem zwróconej właściwości Wyjątku zadania. Nie należy wywoływać innych metod i właściwości |
ReleaseObjectPool() |
Wskazuje, że obsługa środowiska menedżera sterowników ODBC może zostać wydana po wydaniu ostatniego połączenia bazowego. |
ToString() |
Zwraca wartość String zawierającą nazwę Componentobiektu , jeśli istnieje. Ta metoda nie powinna być zastępowana. (Odziedziczone po Component) |
Zdarzenia
Disposed |
Występuje, gdy składnik jest usuwany przez wywołanie Dispose() metody . (Odziedziczone po Component) |
InfoMessage |
Występuje, gdy sterownik ODBC wysyła ostrzeżenie lub komunikat informacyjny. |
StateChange |
Występuje, gdy stan połączenia ulegnie zmianie. |
StateChange |
Występuje, gdy stan połączenia ulegnie zmianie. (Odziedziczone po DbConnection) |
Jawne implementacje interfejsu
ICloneable.Clone() |
Aby uzyskać opis tego elementu członkowskiego, zobacz Clone(). |
IDbConnection.BeginTransaction() |
Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu. Rozpoczyna transakcję bazy danych. |
IDbConnection.BeginTransaction() |
Rozpoczyna transakcję bazy danych. (Odziedziczone po DbConnection) |
IDbConnection.BeginTransaction(IsolationLevel) |
Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu. Rozpoczyna transakcję bazy danych z określonym poziomem izolacji. |
IDbConnection.BeginTransaction(IsolationLevel) |
Rozpoczyna transakcję bazy danych z określonym poziomem izolacji. (Odziedziczone po DbConnection) |
IDbConnection.CreateCommand() |
Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu. Tworzy i zwraca obiekt polecenia skojarzony z połączeniem. |
IDbConnection.CreateCommand() |
Tworzy i zwraca DbCommand obiekt skojarzony z bieżącym połączeniem. (Odziedziczone po DbConnection) |
Metody rozszerzania
ConfigureAwait(IAsyncDisposable, Boolean) |
Konfiguruje sposób oczekiwania na zadania zwracane z asynchronicznego jednorazowego wykonania. |
Dotyczy
Zobacz też
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla