콘텐츠로 이동

SQLConnect

SQLConnect#

Altibase CLI 드라이버와 데이터베이스와의 연결을 설정한다. 연결 핸들은 상태, 트랜잭션 상태, 그리고 오류 정보를 포함한 데이터베이스 연결에 관한 모든 정보를 참조한다.

Unicode SQLConnectW() 동작은 SQLConnect()와 동일하다.

구 문#

SQLRETURN  SQLConnect (
    SQLHDBC         dbc,
    SQLCHAR *       db,
    SQLSMALLINT     dbLength,
    SQLCHAR *       usr,
    SQLSMALLINT     usrLength,
    SQLCHAR *       pwd,
    SQLSMALLINT     pwdLength );

인 자#

자료유형 인자 사용 설명
SQLHDBC dbc 입력 연결 핸들
SQLCHAR * db 입력 호스트 IP
SQLSMALLINT dbLength 입력 *db의 문자 개수
SQLCHAR * usr 입력 사용자 식별자
SQLSMALLINT usrLength 입력 *usr의 문자 개수
SQLCHAR * pwd 입력 인증 문자열 (암호)
SQLSMALLINT pwdLength 입력 *pwd의 문자 개수

결괏값#

SQL_SUCCESS
SQL_SUCCESS_WITH_INFO
SQL_INVALID_HANDLE
SQL_ERROR

설 명#

입력 길이 인수(dbLength, usrLength, pwdLength)는 연관된 자료의 실제 길이로 설정될 수 있다. 여기에는 연관된 자료가 널로 종료된다는 것을 표시하기 위한 SQL_NTS나 널 종료 문자가 포함되지 않는 길이 값을 설정할 수 있다.

이 함수를 호출하기전에 SQLAllocConnect()를 호출해야 한다.

SQLAllocStmt()를 호출하기 전에 이 함수를 호출해야 한다.

서버 연결시 필요한 정보(인자로 넘기는 IP, 사용자명, 암호를 제외한)는 SQLSetConnectAttr()를 이용해 설정할 수 있다.

분산 트랜잭션 상황에서(SQLSetConnectAttr 참조) dbc를 제외한 매개변수는 널(NULL) 또는 0으로 설정한다.

진 단#

SQLSTATE 설명 부연설명
08001 server에 연결할 수 없음 Altibase CLI 드라이버가 데이터베이스에 연결을 설정할 수 없음
08002 연결 이름이 사용 중 해당 dbc는 이미 데이터베이스에 연결 되 있음
08S01 통신 회선 장애 (데이터 송수신 실패) Altibase CLI 드라이버와 데이터베이스 간에 함수 처리가 완료되기 전에 통신 회선 실패
HY000 일반 오류 Character set가 존재하지 않음
HY001 메모리 할당 오류 Altibase CLI 드라이버가 함수를 실행하고 완료하기 위해 요구된 메모리를 할당할 수 없음

관련 함수#

SQLAllocHandle
SQLDisconnect
SQLDriverConnect
SQLSetConnectAttr