콘텐츠로 이동

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에서 제공하는 버전에 유효하지 않음