다음을 통해 공유


환경 핸들 할당

ODBC 애플리케이션의 첫 번째 작업은 드라이버 관리자를 로드하는 것입니다. 이 작업을 수행하는 방법은 운영 체제에 따라 다릅니다. 예를 들어 Microsoft Windows NT Server/Windows 2000 Server, Windows NT Workstation/Windows 2000 Professional 또는 Microsoft Windows 95/98을 실행하는 컴퓨터에서 애플리케이션은 드라이버 관리자 라이브러리에 연결하거나 LoadLibrary를 호출하여 드라이버 관리자 DLL을 로드합니다.

애플리케이션이 다른 ODBC 함수를 호출하기 전에 수행해야 하는 다음 작업은 다음과 같이 ODBC 환경을 초기화하고 환경 핸들을 할당하는 것입니다.

  1. 애플리케이션은 SQLHENV 형식의 변수를 선언합니다. 그런 다음 SQLAllocHandle을 호출하고 이 변수의 주소와 SQL_HANDLE_ENV 옵션을 전달합니다. 예시:

    SQLHENV henv1;  
    
    SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv1);  
    
  2. 드라이버 관리자는 환경에 대한 정보를 저장할 구조를 할당하고 변수에 환경 핸들을 반환합니다.

드라이버 관리자는 호출할 드라이버를 모르기 때문에 현재 드라이버에서 SQLAllocHandle을 호출하지 않습니다. 애플리케이션이 데이터 원본에 연결하는 함수를 호출할 때까지 드라이버에서 SQLAllocHandle 호출을 지연합니다. 자세한 내용은 이 섹션의 뒷부분에 있는 커넥트Ion Process에서 드라이버 관리자의 역할을 참조하세요.

애플리케이션이 ODBC 사용을 마치면 SQLFreeHandle사용하여 환경 핸들을 해제합니다. 환경을 해제한 후 ODBC 함수 호출에서 환경의 핸들을 사용하는 것은 애플리케이션 프로그래밍 오류입니다. 이렇게 하면 정의되지 않았지만 치명적인 결과가 발생할 수 있습니다.

SQLFreeHandle이 호출되면 드라이버는 환경에 대한 정보를 저장하는 데 사용되는 구조를 해제합니다. 해당 환경 핸들의 모든 연결 핸들이 해제될 때까지는 환경 핸들에 대해 SQLFreeHandle을 호출할 수 없습니다.

환경 핸들에 대한 자세한 내용은 환경 핸들을 참조 하세요.