OdbcConnection 클래스

정의

데이터 소스에 대해 열려 있는 연결을 나타냅니다.

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
상속
OdbcConnection
상속
상속
구현

예제

다음 예제에서는 및 를 OdbcCommandOdbcConnection만듭니다. 가 OdbcConnection 열리고 속성으로 설정됩니다 Connection . 이 예제에서는 호출 ExecuteNonQuery, 연결을 닫습니다. 이를 위해 는 ExecuteNonQuery 연결 문자열과 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

설명

개체는 OdbcConnection 연결 문자열 또는 ODBC DSN(데이터 원본 이름)을 사용하여 만든 데이터 원본에 대한 고유한 연결을 나타냅니다. 클라이언트/서버 데이터베이스 시스템을 사용하면 서버에 대한 네트워크 연결과 동일합니다. 네이티브 ODBC 드라이버에서 지원하는 기능에 따라 개체의 OdbcConnection 일부 메서드 또는 속성을 사용할 수 없습니다.

개체는 OdbcConnection ODBC 환경 및 연결 핸들과 같은 네이티브 리소스를 사용합니다. 개체가 scope 나가기 전에 OdbcConnection 또는 Dispose를 호출 Close 하거나 문 내에 연결을 배치하여 열려 OdbcConnection 있는 개체를 Using 항상 명시적으로 닫아야 합니다. 이렇게 하지 않을 경우 이러한 네이티브 리소스를 가비지 수집으로 해제할 수 있습니다. 그것은 즉시 그들을 해제하지 않을 수 있습니다. 이로 인해 결국 기본 드라이버가 리소스가 부족해지거나 최대 한도에 도달할 수 있습니다. 이로 인해 일시적인 오류가 발생했습니다. 예를 들어 많은 연결이 가비지 수집기에서 삭제되기를 기다리는 동안 관련 오류가 발생할 Maximum Connections 수 있습니다. 연결을 명시적으로 닫는 확장성을 향상 시키고 전체 애플리케이션 성능 향상의 네이티브 리소스를 더욱 효율적으로 사용할 수 있습니다.

참고

고성능 애플리케이션을 배포 하려면 자주 사용 해야 연결 풀링. 그러나 .NET Framework Data Provider for ODBC를 사용하는 경우 공급자가 자동으로 관리하므로 연결 풀링을 사용하도록 설정할 필요가 없습니다.

클래스의 ExecuteOdbcCommand 메서드 중 하나가 심각한 OdbcException 경우(예: SQL Server 심각도 수준 20 이상) OdbcConnection 가 닫을 수 있습니다. 그러나 사용자는 연결을 다시 열고 계속할 수 있습니다.

인스턴스를 만드는 애플리케이션을 OdbcConnection 개체는 모든 직접 및 간접 호출자가 선언적 또는 명령적 보안이 요구를 설정 하 여 코드에 충분 한 권한이 필요할 수 있습니다. OdbcConnection 는 개체를 사용하여 보안 요구를 만듭니다 OdbcPermission . 사용자는 개체를 사용하여 OdbcPermissionAttribute 코드에 충분한 권한이 있는지 확인할 수 있습니다. 사용자 및 관리자는 Caspol.exe(코드 액세스 보안 정책 도구)를 사용하여 컴퓨터, 사용자 및 엔터프라이즈 수준에서 보안 정책을 수정할 수도 있습니다. 자세한 내용은 Code Access Security and ADO.NET을 참조하세요.

데이터 원본에서 경고 및 정보 메시지를 처리하는 방법에 대한 자세한 내용은 연결 이벤트를 참조하세요.

생성자

OdbcConnection()

OdbcConnection 클래스의 새 인스턴스를 초기화합니다.

OdbcConnection(String)

지정된 연결 문자열을 사용하여 OdbcConnection 클래스의 새 인스턴스를 초기화합니다.

속성

CanCreateBatch

DbConnection 인스턴스가 DbBatch 클래스를 지원하는지를 나타내는 값을 가져옵니다.

(다음에서 상속됨 DbConnection)
CanRaiseEvents

구성 요소가 이벤트를 발생시킬 수 있는지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 Component)
ConnectionString

데이터 소스를 여는 데 사용되는 문자열을 가져오거나 설정합니다.

ConnectionTimeout

시도를 종료하고 오류를 생성하기 전에 연결하는 동안 대기할 시간(초 단위)을 가져오거나 설정합니다.

Container

IContainer을 포함하는 Component를 가져옵니다.

(다음에서 상속됨 Component)
Database

현재 데이터베이스 이름이나 연결이 열린 후 사용할 데이터베이스의 이름을 가져옵니다.

DataSource

데이터 소스의 파일 이름 또는 서버 이름을 가져옵니다.

DbProviderFactory

DbProviderFactoryDbConnection를 가져옵니다.

(다음에서 상속됨 DbConnection)
DesignMode

Component가 현재 디자인 모드인지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 Component)
Driver

현재 연결에 대해 지정된 ODBC 드라이버의 이름을 가져옵니다.

Events

Component에 연결된 이벤트 처리기의 목록을 가져옵니다.

(다음에서 상속됨 Component)
ServerVersion

클라이언트가 연결되는 서버 버전을 포함하는 문자열을 가져옵니다.

Site

ComponentISite를 가져오거나 설정합니다.

(다음에서 상속됨 Component)
State

연결의 현재 상태를 가져옵니다.

메서드

BeginDbTransaction(IsolationLevel)

파생 클래스에서 재정의되는 경우 데이터베이스 트랜잭션을 시작합니다.

(다음에서 상속됨 DbConnection)
BeginDbTransactionAsync(IsolationLevel, CancellationToken)

데이터베이스 트랜잭션을 비동기적으로 시작합니다.

(다음에서 상속됨 DbConnection)
BeginTransaction()

데이터 소스에서 트랜잭션을 시작합니다.

BeginTransaction(IsolationLevel)

지정된 IsolationLevel 값을 사용하여 데이터 소스에서 트랜잭션을 시작합니다.

BeginTransactionAsync(CancellationToken)

비동기적으로 데이터베이스 트랜잭션을 시작합니다.

(다음에서 상속됨 DbConnection)
BeginTransactionAsync(IsolationLevel, CancellationToken)

비동기적으로 데이터베이스 트랜잭션을 시작합니다.

(다음에서 상속됨 DbConnection)
ChangeDatabase(String)

열려 있는 OdbcConnection과 관련된 현재 데이터베이스를 변경합니다.

ChangeDatabaseAsync(String, CancellationToken)

열려 있는 연결의 현재 데이터베이스를 비동기적으로 변경합니다.

(다음에서 상속됨 DbConnection)
Close()

데이터 소스에 대한 연결을 닫습니다.

CloseAsync()

데이터베이스에 대한 연결을 비동기적으로 닫습니다.

(다음에서 상속됨 DbConnection)
CreateBatch()

DbBatch 클래스를 구현하는 공급자 클래스의 새 인스턴스를 반환합니다.

(다음에서 상속됨 DbConnection)
CreateCommand()

OdbcCommand과 관련된 OdbcConnection 개체를 만들거나 반환합니다.

CreateDbBatch()

파생 클래스에서 재정의되는 경우 클래스를 구현하는 공급자 클래스의 새 instance 반환합니다DbBatch.

(다음에서 상속됨 DbConnection)
CreateDbCommand()

파생 클래스에서 재정의되는 경우 현재 연결과 관련된 DbCommand 개체를 만들고 반환합니다.

(다음에서 상속됨 DbConnection)
CreateObjRef(Type)

원격 개체와 통신하는 데 사용되는 프록시 생성에 필요한 모든 관련 정보가 들어 있는 개체를 만듭니다.

(다음에서 상속됨 MarshalByRefObject)
Dispose()

관리되지 않는 리소스의 확보, 해제 또는 다시 설정과 관련된 애플리케이션 정의 작업을 수행합니다.

(다음에서 상속됨 DbConnection)
Dispose()

Component에서 사용하는 모든 리소스를 해제합니다.

(다음에서 상속됨 Component)
Dispose(Boolean)

DbConnection에서 사용하는 관리되지 않는 리소스를 해제하고, 관리되는 리소스를 선택적으로 해제할 수 있습니다.

(다음에서 상속됨 DbConnection)
Dispose(Boolean)

Component에서 사용하는 관리되지 않는 리소스를 해제하고, 관리되는 리소스를 선택적으로 해제할 수 있습니다.

(다음에서 상속됨 Component)
DisposeAsync()

연결 개체를 비동기적으로 삭제합니다.

(다음에서 상속됨 DbConnection)
EnlistDistributedTransaction(ITransaction)

지정된 트랜잭션에 분산 트랜잭션으로 참여합니다.

EnlistTransaction(Transaction)

지정된 트랜잭션에 분산 트랜잭션으로 참여합니다.

EnlistTransaction(Transaction)

지정된 트랜잭션에 참여합니다.

(다음에서 상속됨 DbConnection)
Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetLifetimeService()
사용되지 않음.

이 인스턴스의 수명 정책을 제어하는 현재의 수명 서비스 개체를 검색합니다.

(다음에서 상속됨 MarshalByRefObject)
GetSchema()

OdbcConnection의 데이터 소스에 대한 구성표 정보를 반환합니다.

GetSchema()

DbConnection의 데이터 소스에 대한 구성표 정보를 반환합니다.

(다음에서 상속됨 DbConnection)
GetSchema(String)

스키마 이름에 지정된 이름을 사용하여 이 OdbcConnection의 데이터 소스에 대한 스키마 정보를 반환합니다.

GetSchema(String)

스키마 이름에 대해 지정된 문자열을 사용하여 이 DbConnection의 데이터 소스에 대한 스키마 정보를 반환합니다.

(다음에서 상속됨 DbConnection)
GetSchema(String, String[])

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

GetSchema(String, String[])

스키마 이름에 대해 지정된 문자열과 제한 값에 대해 지정된 문자열 배열을 사용하여 이 DbConnection의 데이터 소스에 대한 스키마 정보를 반환합니다.

(다음에서 상속됨 DbConnection)
GetSchemaAsync(CancellationToken)

GetSchema()의 비동기 버전입니다. 공급자는 적절한 구현을 재정의해야 합니다. cancellationToken을 선택적으로 적용할 수 있습니다. 기본 구현은 동기 GetSchema() 호출을 호출하고 완료된 작업을 반환합니다. 기본 구현은 이미 취소된 cancellationToken을 전달하는 경우 취소된 작업을 반환합니다. GetSchema()에서 throw되는 예외는 반환된 Task Exception 속성을 통해 전달됩니다.

(다음에서 상속됨 DbConnection)
GetSchemaAsync(String, CancellationToken)

GetSchema(String)의 비동기 버전입니다. 공급자는 적절한 구현을 재정의해야 합니다. cancellationToken을 선택적으로 적용할 수 있습니다. 기본 구현은 동기 GetSchema(String) 호출을 호출하고 완료된 작업을 반환합니다. 기본 구현은 이미 취소된 cancellationToken을 전달하는 경우 취소된 작업을 반환합니다. GetSchema(String)에서 throw되는 예외는 반환된 Task Exception 속성을 통해 전달됩니다.

(다음에서 상속됨 DbConnection)
GetSchemaAsync(String, String[], CancellationToken)

GetSchema(String, String[])의 비동기 버전입니다. 공급자는 적절한 구현을 재정의해야 합니다. cancellationToken을 선택적으로 적용할 수 있습니다. 기본 구현은 동기 GetSchema(String, String[]) 호출을 호출하고 완료된 작업을 반환합니다. 기본 구현은 이미 취소된 cancellationToken을 전달하는 경우 취소된 작업을 반환합니다. GetSchema(String, String[])에서 throw되는 예외는 반환된 Task Exception 속성을 통해 전달됩니다.

(다음에서 상속됨 DbConnection)
GetService(Type)

Component 또는 해당 Container에서 제공하는 서비스를 나타내는 개체를 반환합니다.

(다음에서 상속됨 Component)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
InitializeLifetimeService()
사용되지 않음.

이 인스턴스의 수명 정책을 제어하는 수명 서비스 개체를 가져옵니다.

(다음에서 상속됨 MarshalByRefObject)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
MemberwiseClone(Boolean)

현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다.

(다음에서 상속됨 MarshalByRefObject)
OnStateChange(StateChangeEventArgs)

StateChange 이벤트를 발생시킵니다.

(다음에서 상속됨 DbConnection)
Open()

ConnectionString이 지정하는 속성 설정을 사용하여 데이터 소스에 대한 연결을 엽니다.

OpenAsync()

Open()으로 지정된 설정을 사용하여 데이터베이스 연결을 여는 ConnectionString의 비동기 버전입니다. 이 메서드는 CancellationToken.None을 사용하여 가상 메서드 OpenAsync(CancellationToken)를 호출합니다.

(다음에서 상속됨 DbConnection)
OpenAsync(CancellationToken)

Open()의 비동기 버전입니다. 공급자는 적절한 구현을 재정의해야 합니다. 취소 토큰은 선택적으로 적용될 수 있습니다.

기본 구현은 동기 Open() 호출을 호출하고 완료된 작업을 반환합니다. 기본 구현은 이미 취소된 cancellationToken을 전달하는 경우 취소된 작업을 반환합니다. Open에서 throw되는 예외는 반환된 Task Exception 속성을 통해 전달됩니다.

반환된 작업이 완료될 때까지 DbConnection 개체의 다른 메서드 및 속성을 호출하지 마십시오.

(다음에서 상속됨 DbConnection)
ReleaseObjectPool()

마지막 원본 연결이 해제될 때 ODBC 드라이버 관리자 환경 핸들이 해제될 수 있음을 나타냅니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
ToString()

Component의 이름이 포함된 String을 반환합니다(있는 경우). 이 메서드는 재정의할 수 없습니다.

(다음에서 상속됨 Component)

이벤트

Disposed

Dispose() 메서드를 호출하여 구성 요소를 삭제할 때 발생합니다.

(다음에서 상속됨 Component)
InfoMessage

ODBC 드라이버가 경고나 정보 메시지를 보내면 발생합니다.

StateChange

연결 상태가 변경될 때 발생합니다.

StateChange

연결 상태가 변경될 때 발생합니다.

(다음에서 상속됨 DbConnection)

명시적 인터페이스 구현

ICloneable.Clone()

이 멤버에 대한 설명은 Clone()를 참조하세요.

IDbConnection.BeginTransaction()

이 API는 제품 인프라를 지원하며 코드에서 직접 사용되지 않습니다.

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

IDbConnection.BeginTransaction()

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

(다음에서 상속됨 DbConnection)
IDbConnection.BeginTransaction(IsolationLevel)

이 API는 제품 인프라를 지원하며 코드에서 직접 사용되지 않습니다.

지정된 격리 수준으로 데이터베이스 트랜잭션을 시작합니다.

IDbConnection.BeginTransaction(IsolationLevel)

지정된 격리 수준으로 데이터베이스 트랜잭션을 시작합니다.

(다음에서 상속됨 DbConnection)
IDbConnection.CreateCommand()

이 API는 제품 인프라를 지원하며 코드에서 직접 사용되지 않습니다.

연결과 관련된 명령 개체를 만들고 반환합니다.

IDbConnection.CreateCommand()

현재 연결과 관련된 DbCommand 개체를 만들고 반환합니다.

(다음에서 상속됨 DbConnection)

적용 대상

추가 정보