SQLPoolConnect 函数
一致性
引入的版本:ODBC 3.8 标准合规性:ODBC
摘要
SQLPoolConnect 用于创建新连接(如果池中没有任何连接可以重复使用)。
语法
SQLRETURN SQLPoolConnect(
SQLHDBC hDbc,
SQLHDBC_INFO_TOKEN hDbcInfoToken,
WCHAR * wszOutConnectString,
SQLSMALLINT cchConnectStringBuffer,
SQLSMALLINT * cchConnectStringLen );
参数
hDbc
[输入]连接句柄。
hDbcInfoToken
[输入]新应用程序连接请求的令牌句柄。
wszOutConnectString
[输出]指向已完成连接字符串的缓冲区的指针。 成功连接到目标数据源后,此缓冲区包含已完成的连接字符串。 应用程序应为此缓冲区分配至少 1,024 个字符。
如果 wszOutConnectString 为 NULL, cchConnectStringLen 仍将返回字符总数 (不包括字符数据的 null 终止字符数,) wszOutConnectString 指向的缓冲区中返回。
cchConnectStringBuffer
[输入]*wszOutConnectString 缓冲区的 长度(以字符为单位)。
cchConnectStringLen
[输出]指向缓冲区的指针,该缓冲区中要返回的字符总数 (不包括可在 *wszOutConnectString 中返回的 null 终止字符) 。 如果可返回的字符数大于或等于 cchConnectStringBuffer,则 *wszOutConnectString 中完成的连接字符串将被截断为 cchConnectStringBuffer 减去 null 终止字符的长度。
返回
SQL_SUCCESS、SQL_SUCCESS_WITH_INFO、SQL_ERROR或SQL_INVALID_HANDLE。
诊断
类似于任何输入验证错误的 SQLDriverConnect,只不过驱动程序管理器将使用 SQL_HANDLE_DBC_INFO_TOKEN 的 HandleType 和 hDbcInfoToken 的句柄。
备注
驱动程序管理器保证 hDbc 和 hDbcInfoToken 的父 HENV 句柄相同。
与 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 函数 调用。
包括用于 ODBC 驱动程序开发的 sqlspi.h。