2014-11-27 2 views
0

C DB2 API (및 ODBC)를 사용하여 원격 DB2에 연결하기위한 연결 문자열을 파악하려고합니다. 지금까지 나는 성공하지 않고 다양한 옵션을 시도했습니다. 데이터베이스 이름을 정의 할 때 SQLConnect의 두 번째 매개 변수에서 설명서가 명확하지 않습니다.다른 서버에있는 원격 DB2 데이터베이스에 대한 연결 문자열

SQLConnect(hdbc, "hostname/dbname", SQL_NTS, "user", SQL_NTS, "pass", SQL_NTS); 
SQLConnect(hdbc, "hostname:dbname", SQL_NTS, "user", SQL_NTS, "pass", SQL_NTS); 

// just as jdbc format... 
SQLConnect(hdbc, "odbc:db2://hostname/dbname", SQL_NTS, "user", SQL_NTS, "pass", SQL_NTS); 

고마워요!

답변

2

SQLConnect() 기능을 사용하면 ServerName 매개 변수에 원격 호스트 세부 정보를 지정할 수 없습니다. 여기서 데이터베이스 별명 만 지정할 수 있습니다. 데이터베이스가 원격 서버에 있으면 DB2 클라이언트를 통해 연결 매개 변수를 설정해야합니다 (catalog nodecatalog database 명령 사용).

그러나 SQLDriverConnect() 함수를 사용하고 수행하려고하는 것처럼 연결 문자열에 전체 세부 정보를 지정할 수 있습니다.

+0

감사합니다!, SQLDriverConnect() 함수가 내 문제에 대한 해답이었습니다. 기본적으로 DB2 연결을 위해 필자는 다음과 같은 구성 (함수의 두 번째 매개 변수)을 사용했습니다 :''Driver = {IBM DB2 ODBC Driver}, 데이터베이스 = testDb, Hostname = remoteHostName.com, UID = 사용자 이름, PWD = mypasswd; PORT = 50000 " – rubenafo

관련 문제