SQLBindCol(游标库)

重要

Windows 的未来版本中将移除此功能。 避免在新的开发工作中使用此功能,并计划修改当前使用此功能的应用程序。 Microsoft 建议使用驱动程序的游标功能。

本主题讨论在游标库中使用 SQLBindCol 函数。 有关 SQLBindCol 的一般信息,请参阅 SQLBindCol 函数

应用程序为游标库分配一个或多个缓冲区,以返回中的当前行集。 它调用 SQLBindCol 一次或多次将这些缓冲区绑定到结果集。

只要绑定列的 C 数据类型、列大小和十进制数字保持不变,应用程序就可以在调用 SQLExtendedFetchSQLFetchSQLFetchScroll 后调用 SQLBindCol 来重新绑定结果集列。 应用程序无需关闭游标,将列重新绑定到不同的地址。

游标库支持将 SQL_ATTR_ROW_BIND_OFFSET_PTR 语句属性设置为使用绑定偏移量。 (不必调用 SQLBindCol 即可进行此重新绑定。) 如果游标库与 ODBC 3.x 驱动程序一起使用,则在调用 SQLFetch 时不会使用绑定偏移量。 如果在游标库与 ODBC 2.x 驱动程序一起使用时调用 SQLFetch,则使用绑定偏移量,因为 SQLFetch 随后映射到 SQLExtendedFetch

游标库支持调用 SQLBindCol 来绑定书签列。

使用 ODBC 2.x 驱动程序时,当调用 SQLBindCol 将书签列的缓冲区长度设置为不等于 4 的值时,游标库) 返回 SQLSTATE HY090 (无效的字符串或缓冲区长度。 使用 ODBC 3.x 驱动程序时,游标库允许缓冲区大小为任意大小。