OdbcConnection OdbcConnection OdbcConnection OdbcConnection Class

Definicja

Reprezentuje otwarte połączenie ze źródłem danych.Represents an open connection to a data source.

public ref class OdbcConnection sealed : System::Data::Common::DbConnection, ICloneable
public sealed class OdbcConnection : System.Data.Common.DbConnection, ICloneable
type OdbcConnection = class
    inherit DbConnection
    interface ICloneable
Public NotInheritable Class OdbcConnection
Inherits DbConnection
Implements ICloneable
Dziedziczenie
Implementuje

Przykłady

Poniższy przykład tworzy OdbcCommand OdbcConnectioni.The following example creates an OdbcCommand and an OdbcConnection. Jest otwarty i ustawiany Connection jako właściwość. OdbcConnectionThe OdbcConnection is opened and set as the Connection property. Przykład następnie wywołuje ExecuteNonQueryi zamyka połączenie.The example then calls ExecuteNonQuery, and closes the connection. Aby to osiągnąć, ExecuteNonQuery zostaje przeniesiona wartość parametrów połączenia i ciąg zapytania, który jest instrukcją SQL INSERT.To accomplish this, the ExecuteNonQuery is passed a connection string and a query string that is an SQL INSERT statement.

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 parametrów połączenia lub nazwy źródła danych ODBC (DSN).An OdbcConnection object represents a unique connection to a data source created by using a connection string or ODBC data source name (DSN). W przypadku systemu bazy danych klienta/serwera jest on odpowiednikiem połączenia sieciowego z serwerem.With a client/server database system, it is equivalent to a network connection to the server. 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.Depending on the functionality supported by the native ODBC driver, some methods or properties of an OdbcConnection object may not be available.

OdbcConnection Obiekt używa natywnych zasobów, takich jak środowisko ODBC i uchwyty połączeń.The OdbcConnection object uses native resources such as ODBC environment and connection handles. Należy zawsze jawnie zamknąć wszystkie otwarte OdbcConnection obiekty, wywołując Close lub Dispose przed OdbcConnection przekroczeniem zakresu lub przez umieszczenie połączenia w Using instrukcji.You should always explicitly close any open OdbcConnection objects by calling Close or Dispose before the OdbcConnection object goes out of scope, or by placing the connection within a Using statement. Nie spowoduje to pozostawienia bezpłatnych zasobów natywnych do wyrzucania elementów bezużytecznych.Not doing this leaves the freeing of these native resources to garbage collection. Nie może ona natychmiast zostać zwolniona.It might not free them immediately. To z kolei może ostatecznie spowodować wyczerpanie zasobów podstawowego sterownika lub uzyskać maksymalny limit.This, in turn, can eventually cause the underlying driver to run out of resources or reach a maximum limit. Spowodowało to Sporadyczne awarie.This has resulted in intermittent failures. Można na przykład napotkać Maximum Connections błędy związane z, gdy wiele połączeń oczekuje na usunięcie przez moduł wyrzucania elementów bezużytecznych.For example, you might experience Maximum Connections -related errors while many connections are waiting to be deleted by the garbage collector. Jawne zamknięcie połączeń pozwala na efektywniejsze korzystanie z zasobów natywnych, zwiększenie skalowalności i poprawę ogólnej wydajności aplikacji.Explicitly closing the connections allows for a more efficient use of native resources, enhancing scalability and improving overall application performance.

Uwaga

Aby wdrożyć aplikacje o wysokiej wydajności, często trzeba użyć puli połączeń.To deploy high-performance applications, you frequently must use connection pooling. Jeśli jednak używasz Dostawca danych .NET Framework dla ODBC, nie musisz włączać puli połączeń, ponieważ dostawca ten zarządza automatycznie.However, when you use the .NET Framework Data Provider for ODBC, you do not have to enable connection pooling because the provider manages this automatically.

Jeśli jedna z Execute metod OdbcCommand klasy powoduje krytyczny OdbcException (na przykład OdbcConnection poziom ważności SQL Server 20 lub więcej), może zostać zamknięty.If one of the Execute methods of the OdbcCommand class causes a fatal OdbcException (for example, a SQL Server severity level of 20 or greater), the OdbcConnection may close. Użytkownik może jednak ponownie otworzyć połączenie i kontynuować pracę.However, the user can reopen the connection and continue.

Aplikacja, która tworzy wystąpienie OdbcConnection obiektu, może wymagać, aby wszyscy niebezpośrednie i pośrednie wywołujące mieli wystarczające uprawnienia do kodu przez ustawienie deklaratywnych lub bezwzględnych wymagań w zakresie zabezpieczeń.An application that creates an instance of the OdbcConnection object can require all direct and indirect callers to have sufficient permission to the code by setting declarative or imperative security demands. OdbcConnectiontworzy wymagania dotyczące zabezpieczeń przy użyciu OdbcPermission obiektu.OdbcConnection creates security demands by using the OdbcPermission object. Użytkownicy mogą sprawdzić, czy ich kod ma wystarczające uprawnienia przy użyciu OdbcPermissionAttribute obiektu.Users can verify that their code has sufficient permissions by using the OdbcPermissionAttribute object. 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.Users and administrators can also use the Code Access Security Policy Tool (Caspol.exe) to modify security policy at the computer, user, and enterprise levels. Aby uzyskać więcej informacji, zobacz zabezpieczenia dostępu kodu i ADO.NET.For more information, see Code Access Security and ADO.NET.

Aby uzyskać więcej informacji na temat obsługi ostrzeżeń i komunikatów informacyjnych ze źródła danych, zobacz zdarzenia połączenia.For more information about handling warning and informational messages from the data source, see Connection Events.

Konstruktory

OdbcConnection() OdbcConnection() OdbcConnection() OdbcConnection()

Inicjuje nowe wystąpienie klasy OdbcConnection klasy.Initializes a new instance of the OdbcConnection class.

OdbcConnection(String) OdbcConnection(String) OdbcConnection(String) OdbcConnection(String)

Inicjuje nowe wystąpienie OdbcConnection klasy z określonymi parametrami połączenia.Initializes a new instance of the OdbcConnection class with the specified connection string.

Właściwości

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

Pobiera wartość wskazującą, czy składnik może zgłosić zdarzenie.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
ConnectionString ConnectionString ConnectionString ConnectionString

Pobiera lub ustawia ciąg używany do otwierania źródła danych.Gets or sets the string used to open a data source.

ConnectionTimeout ConnectionTimeout ConnectionTimeout ConnectionTimeout

Pobiera lub ustawia czas oczekiwania podczas próby nawiązania połączenia przed zakończeniem próby i wygenerowaniem błędu.Gets or sets the time to wait while trying to establish a connection before terminating the attempt and generating an error.

Container Container Container Container

Pobiera, który zawiera Component. IContainerGets the IContainer that contains the Component.

(Inherited from Component)
Database Database Database Database

Pobiera nazwę bieżącej bazy danych lub bazę danych, która ma zostać użyta po otwarciu połączenia.Gets the name of the current database or the database to be used after a connection is opened.

DataSource DataSource DataSource DataSource

Pobiera nazwę serwera lub nazwę pliku źródła danych.Gets the server name or file name of the data source.

DesignMode DesignMode DesignMode DesignMode

Pobiera wartość wskazującą, czy Component jest aktualnie w trybie projektowania.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Driver Driver Driver Driver

Pobiera nazwę sterownika ODBC określonego dla bieżącego połączenia.Gets the name of the ODBC driver specified for the current connection.

Events Events Events Events

Pobiera listę programów obsługi zdarzeń, które są dołączone do tego Componentelementu.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
ServerVersion ServerVersion ServerVersion ServerVersion

Pobiera ciąg zawierający wersję serwera, z którym jest połączony klient.Gets a string that contains the version of the server to which the client is connected.

Site Site Site Site

Pobiera lub ustawia wartość ISite. ComponentGets or sets the ISite of the Component.

(Inherited from Component)
State State State State

Pobiera bieżący stan połączenia.Gets the current state of the connection.

Metody

BeginTransaction() BeginTransaction() BeginTransaction() BeginTransaction()

Uruchamia transakcję w źródle danych.Starts a transaction at the data source.

BeginTransaction(IsolationLevel) BeginTransaction(IsolationLevel) BeginTransaction(IsolationLevel) BeginTransaction(IsolationLevel)

Uruchamia transakcję w źródle danych o określonej IsolationLevel wartości.Starts a transaction at the data source with the specified IsolationLevel value.

ChangeDatabase(String) ChangeDatabase(String) ChangeDatabase(String) ChangeDatabase(String)

Zmienia bieżącą bazę danych skojarzoną z otwartym OdbcConnection.Changes the current database associated with an open OdbcConnection.

Close() Close() Close() Close()

Zamyka połączenie ze źródłem danych.Closes the connection to the data source.

CreateCommand() CreateCommand() CreateCommand() CreateCommand()

Tworzy i zwraca OdbcCommand obiekt skojarzony OdbcConnectionz.Creates and returns an OdbcCommand object associated with the OdbcConnection.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Tworzy obiekt, który zawiera wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikacji z obiektem zdalnym.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()

Zwalnia wszystkie zasoby używane przez Componentprogram.Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Zwalnia niezarządzane zasoby używane przez Component program i opcjonalnie zwalnia zarządzane zasoby.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Inherited from Component)
EnlistDistributedTransaction(ITransaction) EnlistDistributedTransaction(ITransaction) EnlistDistributedTransaction(ITransaction) EnlistDistributedTransaction(ITransaction)

Rejestrowanie w określonej transakcji jako transakcja rozproszona.Enlists in the specified transaction as a distributed transaction.

EnlistTransaction(Transaction) EnlistTransaction(Transaction) EnlistTransaction(Transaction) EnlistTransaction(Transaction)

Rejestrowanie w określonej transakcji jako transakcja rozproszona.Enlists in the specified transaction as a distributed transaction.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetSchema() GetSchema() GetSchema() GetSchema()

Zwraca informacje o schemacie dla źródła OdbcConnectiondanych.Returns schema information for the data source of this OdbcConnection.

GetSchema(String) GetSchema(String) GetSchema(String) GetSchema(String)

Zwraca informacje o schemacie dla źródła OdbcConnection danych, używając określonej nazwy dla nazwy schematu.Returns schema information for the data source of this OdbcConnection using the specified name for the schema name.

GetSchema(String, String[]) GetSchema(String, String[]) GetSchema(String, String[]) GetSchema(String, String[])

Zwraca informacje o schemacie dla źródła OdbcConnection danych, używając określonego ciągu dla nazwy schematu i określonej tablicy ciągów dla wartości ograniczeń.Returns schema information for the data source of this OdbcConnection using the specified string for the schema name and the specified string array for the restriction values.

GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Zwraca obiekt, który reprezentuje usługę dostarczoną przez Component lub Containerprzez.Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

Type Pobiera bieżące wystąpienie.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Uzyskuje obiekt usługi istnienia w celu kontrolowania zasad okresu istnienia dla tego wystąpienia.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Tworzy skróconą kopię bieżącego Objectelementu.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Tworzy skróconą kopię bieżącego MarshalByRefObject obiektu.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
Open() Open() Open() Open()

Otwiera połączenie ze źródłem danych o ustawieniach właściwości określonych przez ConnectionString.Opens a connection to a data source with the property settings specified by the ConnectionString.

ReleaseObjectPool() ReleaseObjectPool() ReleaseObjectPool() ReleaseObjectPool()

Wskazuje, że dojście środowiska Menedżera sterowników ODBC może być wydane, gdy ostatnie połączenie podstawowe zostanie wydane.Indicates that the ODBC Driver Manager environment handle can be released when the last underlying connection is released.

ToString() ToString() ToString() ToString()

ComponentZwraca wartość String zawierającą nazwę (jeśli istnieje).Returns a String containing the name of the Component, if any. Ta metoda nie powinna być przesłaniana.This method should not be overridden.

(Inherited from Component)

Zdarzenia

Disposed Disposed Disposed Disposed

Występuje, gdy składnik zostanie usunięty przez wywołanie Dispose() metody.Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
InfoMessage InfoMessage InfoMessage InfoMessage

Występuje, gdy sterownik ODBC wysyła komunikat ostrzegawczy lub informacyjny.Occurs when the ODBC driver sends a warning or an informational message.

StateChange StateChange StateChange StateChange

Występuje, gdy zmienia się stan połączenia.Occurs when the state of the connection changes.

Jawne implementacje interfejsu

ICloneable.Clone() ICloneable.Clone() ICloneable.Clone() ICloneable.Clone()

Aby uzyskać opis tego elementu członkowskiego, Clone()Zobacz.For a description of this member, see Clone().

IDbConnection.BeginTransaction() IDbConnection.BeginTransaction() IDbConnection.BeginTransaction() IDbConnection.BeginTransaction()

Rozpoczyna transakcję bazy danych.Begins a database transaction.

IDbConnection.BeginTransaction(IsolationLevel) IDbConnection.BeginTransaction(IsolationLevel) IDbConnection.BeginTransaction(IsolationLevel) IDbConnection.BeginTransaction(IsolationLevel)

Rozpoczyna transakcję bazy danych o określonym poziomie izolacji.Begins a database transaction with the specified isolation level.

IDbConnection.CreateCommand() IDbConnection.CreateCommand() IDbConnection.CreateCommand() IDbConnection.CreateCommand()

Tworzy i zwraca obiekt polecenia skojarzony z połączeniem.Creates and returns a command object associated with the connection.

Dotyczy

Zobacz też