SQLGetInfo
SQLGetInfo#
애플리케이션에 접속한 DBMS의 일반적인 정보를 반환한다.
Unicode SQLGetInfoW() 동작은 SQLGetInfo()와 동일하다.
구 문#
SQLRETURN SQLGetInfo(
SQLHANDLE ConnectionHandle,
SQLUSMALLINT InfoType,
SQLPOINTER InfoValuePtr,
SQLSMALLINT BufferLength,
SQLSMALLINT *StringLengthPtr );
인 자#
자료유형 | 인자 | 사용 | 설명 |
---|---|---|---|
SQLHANDLE | ConnectionHandle | 입력 | 데이터베이스 연결 핸들 |
SQLUSMALLINT | InfoType | 입력 | 검색하려는 정보의 유형. ODBC 표준에서 제공하는 정보 유형 외에 Altibase 전용인 다음의 값도 사용할 수 있다. - ALTIBASE_PROTO_VER: Altibase CLI 드라이버와 접속한 Altibase 간의 통신 프로토콜 버전을 문자열로 반환받기 위한 정보 유형. |
SQLPOINTER | InfoValuePtr | 출력 | 원하는 정보를 돌려줄 버퍼의 포인터 정보 유형에 따라 다음 5가지 중 하나로 반환된다. - 16 bit integer value - 32 bit integer value - 32 bit binary value - 32 bit mask - Null 종료 문자 스트링 |
SQLSMALLINT | BufferLength | 입력 | InfoValuePtr이 가리키는 버퍼의 바이트 크기 |
SQLSMALLINT * | StringLengthPtr | 출력 | InfoValuePtr이 가리키는 결괏값의 바이트 길이 |
결괏값#
SQL_SUCCESS
SQL_SUCCESS_WITH_INFO
SQL_ERROR
SQL_INVALID_HANDLE
설 명#
SQLGetInfo()는 DBMS의 일반적인 정보를 얻기 위해 사용한다. 이 함수는 InfoType에 따라 각각의 유형별로 관련 정보를 획득할 수 있으며, Altibase는 ODBC 표준을 준수한다.
진 단#
SQLSTATE | 설명 | 부연설명 |
---|---|---|
01004 | 데이터 잘림 | 반환 될 값의 크기가 주어진 버퍼의 크기보다 클 경우 |
08003 | 연결이 끊김 | Connection이 연결되지 않은 상태 |
08S01 | 통신 회선 장애 (데이터 송수신 실패) | Altibase CLI 드라이버와 DB간에 함수 처리가 완료되기 전에 통신 회선 실패 |
HY000 | 일반 오류 | |
HY090 | 유효하지 않은 인자 사용 | 이름 길이 인자들 중 하나의 값이 0보다 작거나 SQL_NTS와 같지 않음. |
HY096 | InfoType의 범위를 벗어남 | InfoType에서 지정한 값이 ODBC에서 제공하는 버전에 유효하지 않음 |