Поделиться через


Сопоставление SQLGetConnectOption

Когда приложение вызывает SQLGetConnectOption через драйвер ODBC 3.x , вызов вызывается

SQLGetConnectOption(hdbc, fOption, pvParam)   

сопоставляется следующим образом:

  • Если fOption указывает параметр подключения, определенный ODBC, который возвращает строку, диспетчер драйверов вызывает

    SQLGetConnectAttr(ConnectionHandle, Attribute, ValuePtr, BufferLength, NULL)  
    
  • Если fOption указывает параметр подключения, определенный ODBC, который возвращает 32-разрядное целое число, диспетчер драйверов вызывает

    SQLGetConnectAttr(ConnectionHandle, Attribute, ValuePtr, 0, NULL)  
    
  • Если fOption указывает параметр инструкции, определяемой драйвером, диспетчер драйверов вызывает

    SQLGetConnectAttr(ConnectionHandle, Attribute, ValuePtr, BufferLength, NULL)  
    

В предыдущих трех случаях аргумент ConnectionHandle имеет значение в hdbc, аргумент Атрибута имеет значение в fOption, а аргумент ValuePtr имеет то же значение, что и pvParam.

Для параметров подключения к строке, определяемых ODBC, диспетчер драйверов задает аргумент BufferLength в вызове SQLGetConnectAttr предопределенной максимальной длины (SQL_MAX_OPTION_STRING_LENGTH); для параметра нестрогого подключения БуферLength имеет значение 0.

Для драйвера ODBC 3.x диспетчер драйверов больше не проверяет, находится ли параметр между SQL_CONN_OPT_MIN и SQL_CONN_OPT_MAX или больше SQL_CONNECT_OPT_DRVR_START. Драйвер должен проверить допустимость значений параметра.