使用游标 (ODBC)

ODBC 支持允许以下项的游标模型:

  • 多种类型的游标。

  • 在游标中滚动和定位。

  • 多个并发选项。

  • 定位更新。

ODBC 应用程序很少声明和打开游标,或使用与游标相关的任何 Transact-SQL 语句。ODBC 自动为从 SQL 语句返回的每个结果集打开游标。游标的特征由执行 SQL 语句之前用 SQLSetStmtAttr 设置的语句属性进行控制。用于处理结果集的 ODBC API 函数支持完整范围的游标功能,包括提取、滚动和定位更新。

下面是 Transact-SQL 脚本和 ODBC 应用程序如何使用游标的比较。

操作

Transact-SQL

ODBC

定义游标行为

通过 DECLARE CURSOR 参数进行指定

通过使用 SQLSetStmtAttr 设置游标属性

打开游标

DECLARE CURSOR OPEN cursor_name

SQLExecDirectSQLExecute

提取行

FETCH

SQLFetchSQLFetchScroll

定位更新

UPDATE 或 DELETE 中的 WHERE CURRENT OF 子句

SQLSetPos

关闭游标

CLOSE cursor_name DEALLOCATE

SQLCloseCursor

在 SQL Server 中实现的服务器游标支持 ODBC 游标模型的功能。SQL Server Native Client 驱动程序使用服务器游标以支持 ODBC API 的游标功能。