如何从C程序连接到IBMDB2事件存储?
我希望能够从C程序连接到IBMDB2事件存储实例。我在文档中看到它支持标准的DB2JDBC连接。它还支持ODBC和标准DB2CLI吗?我找到了以下示例 从这个示例中,它看起来像是在使用SQLDriverConnectionAPI进行连接,并向它提供由该脚本下载的证书如何从C程序连接到IBMDB2事件存储?,c,db2,ibm-event-store,C,Db2,Ibm Event Store,我希望能够从C程序连接到IBMDB2事件存储实例。我在文档中看到它支持标准的DB2JDBC连接。它还支持ODBC和标准DB2CLI吗?我找到了以下示例 从这个示例中,它看起来像是在使用SQLDriverConnectionAPI进行连接,并向它提供由该脚本下载的证书 /* connect to a database with additional connection parameters using SQLDriverConnect() */ int DbDriverConnect(SQ
/* connect to a database with additional connection parameters
using SQLDriverConnect() */
int DbDriverConnect(SQLHANDLE henv,
SQLHANDLE *hdbc,
char dbAlias[],
char user[],
char pswd[],
char hostip[],
char port[],
char sslcert[])
{
SQLRETURN cliRC = SQL_SUCCESS;
int rc = 0;
SQLCHAR connStr[255];
printf("\n-----------------------------------------------------------");
printf("\nUSE THE CLI FUNCTIONS\n");
printf(" SQLAllocHandle\n");
printf(" SQLSetConnectAttr\n");
printf(" SQLDriverConnect\n");
printf("TO CONNECT TO EVENTSTORE:\n");
/* allocate a database connection handle */
cliRC = SQLAllocHandle(SQL_HANDLE_DBC, henv, hdbc);
ENV_HANDLE_CHECK(henv, cliRC);
printf("\n Connecting to the database %s ...\n", dbAlias);
/* parse connection string */
sprintf((char *)connStr,
"DATABASE=%s; UID=%s; PWD=%s; "
"Protocol=tcpip; Authentication=GSSPLUGIN; "
"Security=ssl; SSLServerCertificate=%s; "
"HOSTNAME=%s; PORT=%s;",
dbAlias, user, pswd, sslcert, hostip, port);
/* connect to a data source */
cliRC = SQLDriverConnect(*hdbc,
(SQLHWND)NULL,
connStr,
SQL_NTS,
NULL,
0,
NULL,
SQL_DRIVER_NOPROMPT);
DBC_HANDLE_CHECK(*hdbc, cliRC);
printf(" Connected to the database %s.\n", dbAlias);
return 0;
}