OdbcConnection Klasa

Definicja

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
OdbcConnection
Dziedziczenie
Dziedziczenie
Implementuje

Przykłady

Poniższy przykład tworzy obiekt OdbcCommand i OdbcConnection. Obiekt OdbcConnection jest otwarty i ustawiany jako Connection właściwość . Następnie przykład wywołuje ExecuteNonQuerymetodę i zamyka połączenie. W tym ExecuteNonQuery celu parametr 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

Obiekt OdbcConnection reprezentuje unikatowe połączenie ze źródłem danych utworzonym przy użyciu parametry połączenia lub nazwy źródła danych ODBC (DSN). W systemie bazy danych klienta/serwera jest to odpowiednik 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ą być niedostępne.

Obiekt OdbcConnection używa zasobów natywnych, takich jak środowisko ODBC i dojścia połączeń. Zawsze należy jawnie zamknąć wszystkie otwarte OdbcConnection obiekty przez wywołanie Close lub dispose przed OdbcConnection wyjściem obiektu z zakresu lub przez umieszczenie połączenia w instrukcji Using . 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 usługą , 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 wdrażać aplikacje o wysokiej wydajności, często należy używać buforowania połączeń. Jednak w przypadku korzystania z dostawcy danych .NET Framework dla ODBC nie trzeba włączać buforowania połączeń, ponieważ dostawca zarządza tym automatycznie.

Jeśli jedna z Execute metod OdbcCommand klasy powoduje błąd krytyczny OdbcException (na przykład SQL Server poziom ważności 20 lub większy), OdbcConnection może zostać zamknięty. Użytkownik może jednak 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 wystarczających uprawnień do kodu przez ustawienie deklaratywnych lub imperatywnych wymagań dotyczących zabezpieczeń. OdbcConnection tworzy wymagania dotyczące zabezpieczeń przy użyciu OdbcPermission obiektu . Użytkownicy mogą sprawdzić, czy ich 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) do modyfikowania zasad zabezpieczeń na poziomie komputera, użytkownika i przedsiębiorstwa. Aby uzyskać więcej informacji, zobacz Zabezpieczenia dostępu 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()

Zwraca informacje o schemacie dla źródła danych tego DbConnectionelementu .

(Odziedziczone po DbConnection)
GetSchema(String)

Zwraca informacje o schemacie dla źródła OdbcConnection danych przy użyciu określonej nazwy schematu.

GetSchema(String)

Zwraca informacje o schemacie dla źródła DbConnection danych przy użyciu określonego ciągu nazwy schematu.

(Odziedziczone po DbConnection)
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ń.

GetSchema(String, String[])

Zwraca informacje o schemacie dla źródła DbConnection danych przy użyciu określonego ciągu dla nazwy schematu i określonej tablicy ciągów dla wartości ograniczeń.

(Odziedziczone po DbConnection)
GetSchemaAsync(CancellationToken)

Jest to asynchroniczna wersja programu GetSchema(). Dostawcy powinni zastąpić odpowiednią implementacją. Opcjonalnie cancellationToken można je honorować. Domyślna implementacja wywołuje wywołanie synchroniczne GetSchema() i zwraca ukończone zadanie. Domyślna implementacja zwróci anulowane zadanie, jeśli przekazano już anulowany cancellationTokenelement . Wyjątki zgłoszone przez GetSchema() program będą przekazywane za pośrednictwem zwróconej właściwości Wyjątki zadania.

(Odziedziczone po DbConnection)
GetSchemaAsync(String, CancellationToken)

Jest to asynchroniczna wersja programu GetSchema(String). Dostawcy powinni zastąpić odpowiednią implementacją. Opcjonalnie cancellationToken można je honorować. Domyślna implementacja wywołuje wywołanie synchroniczne GetSchema(String) i zwraca ukończone zadanie. Domyślna implementacja zwróci anulowane zadanie, jeśli przekazano już anulowany cancellationTokenelement . Wyjątki zgłoszone przez GetSchema(String) program będą przekazywane za pośrednictwem zwróconej właściwości Wyjątki zadania.

(Odziedziczone po DbConnection)
GetSchemaAsync(String, String[], CancellationToken)

Jest to asynchroniczna wersja programu GetSchema(String, String[]). Dostawcy powinni zastąpić odpowiednią implementacją. Opcjonalnie cancellationToken można je honorować. Domyślna implementacja wywołuje wywołanie synchroniczne GetSchema(String, String[]) i zwraca ukończone zadanie. Domyślna implementacja zwróci anulowane zadanie, jeśli przekazano już anulowany cancellationTokenelement . Wyjątki zgłoszone przez GetSchema(String, String[]) program będą przekazywane za pośrednictwem zwróconej właściwości Wyjątki zadania.

(Odziedziczone po DbConnection)
GetService(Type)

Zwraca obiekt reprezentujący usługę dostarczaną przez Component obiekt lub przez obiekt Container.

(Odziedziczone po Component)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(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 DbConnection obiektu, dopóki zwrócone zadanie nie zostanie ukończone.

(Odziedziczone po DbConnection)
ReleaseObjectPool()

Wskazuje, że obsługa środowiska menedżera sterowników ODBC może zostać wydana po wydaniu ostatniego połączenia bazowego.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
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)

Dotyczy

Zobacz też