Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Диспетчер драйверов поддерживает две точки входа для функций, которые принимают строковые аргументы. Неоцененные функции (SQLDriverConnect) — это форма ANSI функции. Форма Юникода украшена W (SQLDriverConnectW.)
Файл заголовка ODBC также поддерживает функции, украшенные A, (SQLDriverConnectA) для удобства смешанных приложений ANSI/Юникод. Вызовы функций A фактически вызываются в неоценённую точку входа (SQLDriverConnect).)
Если приложение компилируется с _UNICODE #define, файл заголовка ODBC сопоставляет неоцененные вызовы функций (SQLDriverConnect) с версией Юникода (SQLDriverConnectW.)
Диспетчер драйверов распознает драйвер в качестве драйвера Юникода, если SQLConnectW поддерживается драйвером.
Если драйвер является драйвером Юникода, диспетчер драйверов вызывает функцию следующим образом:
Передает функцию без строковых аргументов или параметров непосредственно в драйвер.
Передает функции Юникода (с суффиксом W ) непосредственно через драйвер.
Преобразует функцию ANSI (с суффиксом A ) в функцию Юникода (с суффиксом W ), преобразовав строковые аргументы в символы Юникода и передает функцию Юникод драйверу.
Если драйвер является драйвером ANSI, диспетчер драйверов выполняет вызовы функций следующим образом:
Передает функции без строковых аргументов или параметров непосредственно в драйвер.
Преобразует функции Юникода (с суффиксом W ) в вызов функции ANSI и передает его драйверу.
Передает функцию ANSI непосредственно драйверу.
Диспетчер драйверов внутренне включен в Юникоде. В результате оптимальная производительность получается приложением Юникода, работающим с драйвером Юникода, так как диспетчер драйверов просто передает функции Юникода драйверу. Если приложение ANSI работает с драйвером ANSI, диспетчер драйверов должен преобразовать строки из ANSI в Юникод при обработке некоторых функций, таких как SQLDriverConnect. После обработки функции диспетчер драйверов должен затем преобразовать строку Юникода обратно в ANSI, прежде чем отправлять функцию драйверу ANSI.
Приложение не должно изменять или считывать буферы связанных параметров, когда драйвер возвращает SQL_STILL_EXECUTING или SQL_NEED_DATA. Диспетчер драйверов оставляет буферы привязанными к ANSI, пока драйвер не возвращает SQL_SUCCESS, SQL_SUCCESS_WITH_INFO или SQL_ERROR. Многопоточное приложение не должно получать доступ к каким-либо связанным значениям параметров, в котором выполняется другая цепочка инструкции SQL. Диспетчер драйверов преобразует данные из Юникода в ANSI "на месте", а другой поток может видеть данные ANSI в этих буферах, пока драйвер по-прежнему обрабатывает инструкцию SQL. Приложения, которые привязывают данные Юникода к драйверу ANSI, не должны привязать два разных столбца к одному адресу.