SQLGetConnectOption 映射
当应用程序通过 ODBC 3.x 驱动程序调用 SQLGetConnectOption 时,调用
SQLGetConnectOption(hdbc, fOption, pvParam)
映射如下:
如果 fOption 指示返回字符串的 ODBC 定义的连接选项,驱动程序管理器将调用
SQLGetConnectAttr(ConnectionHandle, Attribute, ValuePtr, BufferLength, NULL)
如果 fOption 指示返回 32 位整数值的 ODBC 定义的连接选项,则驱动程序管理器将调用
SQLGetConnectAttr(ConnectionHandle, Attribute, ValuePtr, 0, NULL)
如果 fOption 指示驱动程序定义的语句选项,驱动程序管理器将调用
SQLGetConnectAttr(ConnectionHandle, Attribute, ValuePtr, BufferLength, NULL)
在上述三种情况下, ConnectionHandle 参数设置为 hdbc 中的值, Attribute 参数设置为 fOption 中的值, ValuePtr 参数设置为 与 pvParam 相同的值。
对于 ODBC 定义的字符串连接选项,驱动程序管理器在调用 SQLGetConnectAttr 时将 BufferLength 参数设置为预定义的最大长度 (SQL_MAX_OPTION_STRING_LENGTH) ;对于非字符串连接选项,BufferLength 设置为 0。
对于 ODBC 3.x 驱动程序,驱动程序管理器不再检查 Option 是介于 SQL_CONN_OPT_MIN 与 SQL_CONN_OPT_MAX 之间,还是大于 SQL_CONNECT_OPT_DRVR_START。 驱动程序必须检查选项值的有效性。