표준 규격 애플리케이션 및 드라이버
표준 규격 애플리케이션 또는 드라이버는 Open Group CAE 사양 "데이터 관리: SQL CLI(호출 수준 인터페이스)" 및 ISO/IEC 9075-3:1995(E) SQL/CLI(호출 수준 인터페이스)를 준수하는 애플리케이션입니다.
ODBC 3.x 는 다음 기능을 보장합니다.
Open Group 및 ISO CLI 사양에 작성된 애플리케이션은 ODBC 3.x 헤더 파일로 컴파일되고 ODBC 3.x 라이브러리와 연결되고 ODBC 3.x 드라이버 관리자를 통해 드라이버에 액세스할 때 ODBC 3.x 드라이버 또는 표준 규격 드라이버와 함께 작동합니다.
Open Group 및 ISO CLI 사양에 기록된 드라이버는 ODBC 3.x 헤더 파일로 컴파일되고 ODBC 3.x 라이브러리와 연결되고 애플리케이션이 ODBC 3.x 드라이버 관리자를 통해 드라이버에 액세스할 때 ODBC 3.x 애플리케이션 또는 표준 규격 애플리케이션에서 작동합니다.
표준 규격 애플리케이션 및 드라이버는 ODBC_STD 컴파일 플래그로 컴파일됩니다.
표준 규격 애플리케이션은 다음과 같은 동작을 표시합니다.
표준 규격 애플리케이션이 SQLAllocEnv를 호출하는 경우(SQLAllocEnv가 Open Group 및 ISO CLI의 유효한 함수이기 때문에 발생할 수 있음) 호출은 컴파일 시간에 SQLAllocHandleStd에 매핑 됩니다. 따라서 런타임에 애플리케이션은 SQLAllocHandleStd를 호출 합니다. 이 호출을 처리하는 동안 드라이버 관리자는 SQL_ATTR_ODBC_VERSION 환경 특성을 SQL_OV_ODBC3 설정합니다. SQLAllocHandleStd에 대한 호출은 SQL_HANDLE_ENV HandleType을 사용하여 SQLAllocHandle을 호출하고 SQL_OV_ODBC3 SQL_ATTR_ODBC_VERSION 설정하는 SQLSetEnvAttr 호출과 같습니다.
표준 규격 애플리케이션이 SQLBindParam을 호출하는 경우(SQLBindParam이 Open Group 및 ISO CLI의 유효한 함수이기 때문에 발생할 수 있음) ODBC 3.x 드라이버 관리자는 SQLBindParameter의 해당 호출에 호출을 매핑합니다. (참조) 부록 G의 SQLBindParam 매핑 : 이전 버전과의 호환성을 위한 드라이버 지침입니다.)
ISO CLI와 일치하기 위해 ODBC 3.x 헤더 파일에는 SQLGetInfo 호출에 사용되는 정보 형식에 대한 별칭이 포함됩니다. 표준 규격 애플리케이션은 ODBC 3.x 정보 형식 대신 이러한 별칭을 사용할 수 있습니다. 자세한 내용은 다음 항목인 헤더 파일을 참조하세요.
표준 규격 애플리케이션은 지원되는 모든 기능이 작동할 드라이버에서 지원되는지 확인해야 합니다. SQL_ATTR_CURSOR_SCROLLABLE 문 특성을 SQL_SCROLLABLE 설정하고 SQL_ATTR_CURSOR_SENSITIVITY 문 특성을 SQL_INSENSITIVE 또는 SQL_SENSITIVE 설정하는 기능은 표준에서 선택적 기능으로 사용할 수 있지만 ODBC 3.x Core 수준에 포함되지 않으므로 모든 ODBC 3.x 드라이버에서 지원되지 않을 수 있습니다. 표준 규격 애플리케이션에서 이러한 기능을 사용하는 경우 작동할 드라이버가 지원하는지 확인해야 합니다.