OdbcConnection OdbcConnection OdbcConnection OdbcConnection Class

정의

데이터 원본에 대해 열린 연결을 나타냅니다.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
상속
구현

예제

다음 예제는 OdbcCommandOdbcConnection합니다.The following example creates an OdbcCommand and an OdbcConnection. 합니다 OdbcConnection 열고로 Connection 속성입니다.The OdbcConnection is opened and set as the Connection property. 이 예제에서는 호출 ExecuteNonQuery, 연결을 닫습니다.The example then calls ExecuteNonQuery, and closes the connection. 이 수행 하는 ExecuteNonQuery 연결 문자열 및 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

설명

OdbcConnection 개체는 연결 문자열 또는 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). 클라이언트/서버 데이터베이스 시스템을 사용 하 여 서버에 대 한 네트워크 연결과 같습니다.With a client/server database system, it is equivalent to a network connection to the server. 일부 메서드 또는 속성의 네이티브 ODBC 드라이버에서 지 원하는 기능에 따라는 OdbcConnection 개체를 사용할 수 없습니다.Depending on the functionality supported by the native ODBC driver, some methods or properties of an OdbcConnection object may not be available.

OdbcConnection ODBC 환경 및 연결 핸들과 같은 네이티브 리소스를 사용 하는 개체입니다.The OdbcConnection object uses native resources such as ODBC environment and connection handles. 열려 있는 항상 명시적으로 닫아야 OdbcConnection 호출 하 여 개체 Close 또는 Dispose 하기 전에 OdbcConnection 범위를 벗어날 또는 연결을 배치 하 여 개체 이동는 Using 문.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. 이렇게 하지 않으면 가비지 컬렉션에 이러한 네이티브 리소스를 해제 상태로 유지 합니다.Not doing this leaves the freeing of these native resources to garbage collection. 이 수 하지 즉시 해제 합니다.It might not free them immediately. 이 차례로 결국 하면 기본 드라이버 리소스가 부족 하거나 최대 한도 도달 합니다.This, in turn, can eventually cause the underlying driver to run out of resources or reach a maximum limit. 일시적인 오류가 발생 했습니다.This has resulted in intermittent failures. 예를 들어, 발생할 수 있습니다 Maximum Connections -가비지 수집기에 의해 삭제 될 많은 연결 대기 중인 동안에 관련 오류입니다.For example, you might experience Maximum Connections -related errors while many connections are waiting to be deleted by the garbage collector. 연결을 명시적으로 닫는 확장성을 향상 시키고 전체 애플리케이션 성능 향상의 네이티브 리소스를 더욱 효율적으로 사용할 수 있습니다.Explicitly closing the connections allows for a more efficient use of native resources, enhancing scalability and improving overall application performance.

참고

고성능 애플리케이션을 배포 하려면 자주 사용 해야 연결 풀링.To deploy high-performance applications, you frequently must use connection pooling. 그러나.NET Framework Data Provider for ODBC를 사용 하면 필요가 없습니다 공급자에서 관리 하기 때문이 자동으로 연결 풀링을 사용 하도록 설정 합니다.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.

없으면의 합니다 Execute 의 메서드를 OdbcCommand 클래스 하면 심각한 OdbcException (예를 들어, SQL Server 심각도 수준이 20 이상)는 OdbcConnection 닫힐 수 있습니다.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. 그러나 사용자는 연결을 다시 열고 계속할 수 있습니다.However, the user can reopen the connection and continue.

인스턴스를 만드는 애플리케이션을 OdbcConnection 개체는 모든 직접 및 간접 호출자가 선언적 또는 명령적 보안이 요구를 설정 하 여 코드에 충분 한 권한이 필요할 수 있습니다.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. OdbcConnection 사용 하 여 보안 요청을 만듭니다는 OdbcPermission 개체입니다.OdbcConnection creates security demands by using the OdbcPermission object. 사용자가 해당 코드를 사용 하 여 충분 한 권한이 있는지 확인할 수는 OdbcPermissionAttribute 개체입니다.Users can verify that their code has sufficient permissions by using the OdbcPermissionAttribute object. 사용자와 관리자가 컴퓨터, 사용자 및 엔터프라이즈 수준 보안 정책을 수정 하려면 코드 액세스 보안 정책 도구 (Caspol.exe)를 이용할 수 있습니다.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. 자세한 내용은 Code Access Security and ADO.NET을 참조하세요.For more information, see Code Access Security and ADO.NET.

데이터 원본에서 경고 및 정보 메시지를 처리 하는 방법에 대 한 자세한 내용은 참조 하세요. 연결 이벤트합니다.For more information about handling warning and informational messages from the data source, see Connection Events.

생성자

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

OdbcConnection 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the OdbcConnection class.

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

새 인스턴스를 초기화 합니다 OdbcConnection 지정한 연결 문자열을 사용 합니다.Initializes a new instance of the OdbcConnection class with the specified connection string.

속성

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

구성 요소가 이벤트를 발생시킬 수 있는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
ConnectionString ConnectionString ConnectionString ConnectionString

데이터 소스를 여는 데 사용 하는 문자열을 가져오거나 설정 합니다.Gets or sets the string used to open a data source.

ConnectionTimeout ConnectionTimeout ConnectionTimeout ConnectionTimeout

시도 종료 하 고 오류를 생성 하기 전에 연결을 설정 하는 동안 대기할 시간을 가져오거나 설정 합니다.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

IContainer가 포함된 Component를 가져옵니다.Gets the IContainer that contains the Component.

(Inherited from Component)
Database Database Database Database

현재 데이터베이스 이름이나 연결이 열린 후 사용할 데이터베이스의 이름을 가져옵니다.Gets the name of the current database or the database to be used after a connection is opened.

DataSource DataSource DataSource DataSource

서버 이름 또는 데이터 원본 파일 이름을 가져옵니다.Gets the server name or file name of the data source.

DesignMode DesignMode DesignMode DesignMode

Component가 현재 디자인 모드인지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Driver Driver Driver Driver

현재 연결에 대해 지정 된 ODBC 드라이버의 이름을 가져옵니다.Gets the name of the ODBC driver specified for the current connection.

Events Events Events Events

Component에 연결된 이벤트 처리기의 목록을 가져옵니다.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
ServerVersion ServerVersion ServerVersion ServerVersion

클라이언트가 연결 된 서버의 버전이 들어 있는 문자열을 가져옵니다.Gets a string that contains the version of the server to which the client is connected.

Site Site Site Site

ComponentISite를 가져오거나 설정합니다.Gets or sets the ISite of the Component.

(Inherited from Component)
State State State State

연결의 현재 상태를 가져옵니다.Gets the current state of the connection.

메서드

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

데이터 소스에서 트랜잭션을 시작합니다.Starts a transaction at the data source.

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

지정 된 데이터 소스에서 트랜잭션을 시작 IsolationLevel 값입니다.Starts a transaction at the data source with the specified IsolationLevel value.

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

개방적이 고 연관 된 현재 데이터베이스 변경 OdbcConnection합니다.Changes the current database associated with an open OdbcConnection.

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

데이터 원본에 연결을 닫습니다.Closes the connection to the data source.

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

만들고 반환을 OdbcCommand 연관 된 개체는 OdbcConnection합니다.Creates and returns an OdbcCommand object associated with the OdbcConnection.

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

원격 개체와 통신하는 데 사용되는 프록시 생성에 필요한 모든 관련 정보가 들어 있는 개체를 만듭니다.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()

Component에서 사용하는 모든 리소스를 해제합니다.Releases all resources used by the Component.

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

Component에서 사용하는 관리되지 않는 리소스를 해제하고, 관리되는 리소스를 선택적으로 해제할 수 있습니다.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)

지정된 트랜잭션에 분산 트랜잭션으로 참여합니다.Enlists in the specified transaction as a distributed transaction.

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

지정된 트랜잭션에 분산 트랜잭션으로 참여합니다.Enlists in the specified transaction as a distributed transaction.

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

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

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

기본 해시 함수로 작동합니다.Serves as the default hash function.

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

이 인스턴스의 수명 정책을 제어하는 현재의 수명 서비스 개체를 검색합니다.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

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

OdbcConnection의 데이터 소스에 대한 구성표 정보를 반환합니다.Returns schema information for the data source of this OdbcConnection.

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

이 데이터 원본에 대 한 스키마 정보를 반환 OdbcConnection 스키마 이름에 지정된 된 이름을 사용 합니다.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[])

스키마 이름에 대해 지정된 문자열과 제한 값에 대해 지정된 문자열 배열을 사용하여 이 OdbcConnection의 데이터 소스에 대한 스키마 정보를 반환합니다.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)

Component 또는 해당 Container에서 제공하는 서비스를 나타내는 개체를 반환합니다.Returns an object that represents a service provided by the Component or by its Container.

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

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

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

이 인스턴스의 수명 정책을 제어하는 수명 서비스 개체를 가져옵니다.Obtains a lifetime service object to control the lifetime policy for this instance.

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

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

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

현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다.Creates a shallow copy of the current MarshalByRefObject object.

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

지정 된 속성 설정을 사용 하 여 데이터 원본에 대 한 연결을 엽니다는 ConnectionString합니다.Opens a connection to a data source with the property settings specified by the ConnectionString.

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

마지막 기본 연결이 해제 될 때 ODBC 드라이버 관리자 환경 핸들이 해제 될 수 있음을 나타냅니다.Indicates that the ODBC Driver Manager environment handle can be released when the last underlying connection is released.

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

Component의 이름이 포함된 String을 반환합니다(있는 경우).Returns a String containing the name of the Component, if any. 이 메서드는 재정의할 수 없습니다.This method should not be overridden.

(Inherited from Component)

이벤트

Disposed Disposed Disposed Disposed

Dispose() 메서드를 호출하여 구성 요소가 삭제되는 경우 발생합니다.Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
InfoMessage InfoMessage InfoMessage InfoMessage

ODBC 드라이버가 경고나 정보 메시지를 보내면 발생 합니다.Occurs when the ODBC driver sends a warning or an informational message.

StateChange StateChange StateChange StateChange

연결의 상태가 변경 될 때 발생 합니다.Occurs when the state of the connection changes.

명시적 인터페이스 구현

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

이 멤버에 대한 설명은 Clone()를 참조하세요.For a description of this member, see Clone().

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

데이터베이스 트랜잭션을 시작합니다.Begins a database transaction.

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

지정 된 격리 수준으로 데이터베이스 트랜잭션을 시작합니다.Begins a database transaction with the specified isolation level.

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

만들고 연결과 관련 된 명령 개체를 반환 합니다.Creates and returns a command object associated with the connection.

적용 대상

추가 정보