SQLSetStmtAttr(游标库)

重要

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

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

游标库支持 SQLSetStmtAttr 的以下语句属性:

SQL_ATTR_CONCURRENCY
SQL_ATTR_CURSOR_TYPE
SQL_ATTR_FETCH_BOOKMARK_PTR
SQL_ATTR_PARAM_BIND_OFFSET_PTR
SQL_ATTR_PARAM_BIND_TYPE

SQL_ATTR_ROW_BIND_OFFSET_PTR
SQL_ATTR_ROW_BIND_TYPE
SQL_ATTR_ROWSET_ARRAY_SIZE
SQL_ATTR_SIMULATE_CURSOR
SQL_ATTR_USE_BOOKMARKS

游标库仅支持 SQL_ATTR_CURSOR_TYPE 语句属性的SQL_CURSOR_FORWARD_ONLY和SQL_CURSOR_STATIC值。

对于仅向前游标,游标库支持 SQL_ATTR_CONCURRENCY 语句属性的SQL_CONCUR_READ_ONLY值。 对于静态游标,游标库支持 SQL_ATTR_CONCURRENCY 语句特性的SQL_CONCUR_READ_ONLY和SQL_CONCUR_VALUES值。

游标库仅支持 SQL_ATTR_SIMULATE_CURSOR 语句属性的SQL_SC_NON_UNIQUE值。

尽管 ODBC 规范支持在调用 SQLFetch 或 SQLFetchScroll 后使用SQL_ATTR_PARAM_BIND_TYPE或SQL_ATTR_ROW_BIND_TYPE属性调用 SQLSetStmtAttr但游标库不支持。 应用程序必须先关闭游标,然后才能更改游标库中的绑定类型。 游标库支持在游标打开时更改SQL_ATTR_ROW_BIND_OFFSET_PTR、SQL_ATTR_PARAM_BIND_OFFSET_PTR、SQL_ATTR_ROWS_FETCHED_PTR和SQL_ATTR_PARAMS_PROCESSED_PTR语句属性。

应用程序可以调用属性为 SQL_ATTR_ROW_ARRAY_SIZE 的 SQLSetStmtAttr,以在游标打开时更改行集大小。 新的行集大小将在下次调用 SQLFetchScrollSQLFetch 时生效。

游标库支持设置 SQL_ATTR_PARAM_BIND_OFFSET_PTR 或 SQL_ATTR_ROW_BIND_OFFSET_PTR 语句属性以启用绑定偏移。 当游标库与 ODBC 2 一起使用时,绑定偏移量将不用于对 SQLFetch 的调用。x 驱动程序。

游标库支持将 SQL_ATTR_USE_BOOKMARKS 语句属性设置为 SQL_UB_VARIABLE。