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


Функция SQLPoolConnect

Соответствия
Представлена версия: соответствие стандартам ODBC 3.8: ODBC

Сводка
SQLPoolConnect используется для создания нового подключения, если подключение в пуле не может использоваться повторно.

Синтаксис

  
SQLRETURN  SQLPoolConnect(  
                SQLHDBC              hDbc,  
                SQLHDBC_INFO_TOKEN   hDbcInfoToken,  
                WCHAR *              wszOutConnectString,  
                SQLSMALLINT          cchConnectStringBuffer,  
                SQLSMALLINT *        cchConnectStringLen );  

Аргументы

hDbc
[Входные данные] Дескриптор подключения.

hDbcInfoToken
[Входные данные] Дескриптор маркера для нового запроса подключения к приложению.

wszOutConnectString
[Выходные данные] Указатель на буфер для завершенной строки подключения. После успешного подключения к целевому источнику данных этот буфер содержит завершенную строку подключения. Приложения должны выделять не менее 1024 символов для этого буфера.

Если wsszOutConnectString имеет значение NULL, cchConnectStringLen по-прежнему возвращает общее количество символов (за исключением символа завершения null для символьных данных), доступное для возврата в буфер, на который указывает wszOutConnectString.

cchConnectStringBuffer
[Входные данные] Длина буфера *wszOutConnectString в символах.

cchConnectStringLen
[Выходные данные] Указатель на буфер, в котором возвращается общее число символов (за исключением символа завершения null), доступное для возврата в *wszOutConnectString. Если число символов, доступных для возврата, больше или равно cchConnectStringBuffer, завершенная строка подключения в *wszOutConnectString будет усечена до cchConnectStringBuffer минус длина символа завершения null.

Возвраты

SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR или SQL_INVALID_HANDLE.

Диагностика

Аналогично SQLDriverConnect для любой ошибки проверки входных данных, за исключением того, что диспетчер драйверов будет использовать HandleType SQL_HANDLE_DBC_INFO_TOKEN и дескрипторhDbcInfoToken.

Замечания

Диспетчер драйверов гарантирует, что родительский дескриптор HENV hDbc и hDbcInfoToken совпадают.

В отличие от SQLDriverConnect, нет аргумента DriverCompletion , чтобы предложить пользователям вводить сведения о подключении. Диалоговое окно запроса запрещено в сценарии пула.

Приложения не должны вызывать эту функцию напрямую. Драйвер ODBC, поддерживающий пул подключений с поддержкой драйверов, должен реализовать эту функцию.

Когда драйвер возвращает SQL_ERROR или SQL_INVALID_HANDLE, диспетчер драйверов возвращает ошибку приложению (в SQLConnect или SQLDriverConnect).

Когда драйвер возвращает SQL_SUCCESS_WITH_INFO, диспетчер драйверов получит диагностические сведения из hDbcInfoToken и возвращает SQL_SUCCESS_WITH_INFO приложению в SQLConnect и SQLDriverConnect.

Если приложение использует SQLConnect, wszOutConnectString будет буфером NULL (последние три параметра будут иметь значение NULL, 0, NULL). В противном случае драйвер должен вернуть строку выходного подключения, которая будет возвращена вызову функции SQLDriverConnect приложения.

Включите sqlspi.h для разработки драйверов ODBC.

См. также

Разработка драйвера ODBC
Организация пулов соединений с учетом драйвера
Разработка драйвера ODBC с поддержкой пула подключений