设置 DSN 连接属性
以下表中的属性是所有用户 DSN 条目和所有系统 DSN 条目共用的。所提供的示例适用于 Windows 客户端。
要编辑 DSN 属性:
-
在 UNIX 和 Linux 客户端平台上,您可以编辑
odbc.ini
文件。此文件的位置特定于驱动程序管理器。请参阅为 Linux 创建 ODBC DSN。 -
在 Windows 客户端平台上,您可以使用 Vertica ODBC 客户端驱动程序界面编辑部分 DSN 属性。请参阅为 Windows 客户端创建 ODBC DSN。
-
您也可以直接编辑 DSN 属性,方法是在 Windows 注册表中(例如在
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\\
DSNname 中)打开 DSN 条目。直接编辑注册表会带来风险,因此,只应对无法通过 ODBC 驱动程序用户界面或客户端代码进行设置的属性使用此方法。 -
当使用
SQLDriverConnect()
函数打开连接时,您可以在连接字符串中设置属性:sqlRet = SQLDriverConnect(sql_hDBC, 0, (SQLCHAR*)"DSN=DSNName;Locale=en_GB@collation=binary", SQL_NTS, szDNS, 1024,&nSize, SQL_DRIVER_NOPROMPT);
注意
在连接字符串中,“;”是预留符号。如果需要设置多个属性作为 ConnSettings 属性的一部分,请使用“%3B”来替代“;”,并使用“+”来替代空格。
例如:
sqlRet = SQLDriverConnect(sql_hDBC, 0, (SQLCHAR*)"DSN=Vertica SQL;ConnSettings=set+search_path+to+a,b,c%3Bset+locale=ch;SSLMode=prefer", SQL_NTS, szDNS, 1024,&nSize, SQL_DRIVER_NOPROMPT);
-
已使用
SQLGetConnectAttr()
和SQLGetStmtAttr()
API 调用建立与 Vertica 的连接后,客户端代码可以检索 DSN 属性值。可以使用SQLSetConnectAttr()
和SQLSetStmtAttr()
设置部分属性。有关特定于 Vertica 的属性的列表,请参阅特定于 Vertica 的 ODBC 头文件。