游标类型

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Azure Synapse AnalyticsAnalytics Platform System (PDW)

ODBC 定义了 Microsoft SQL Server 和 SQL Server Native Client ODBC 驱动程序支持的四种游标类型。 这些游标在检测结果集更改的能力以及它们消耗的资源(例如 tempdb 中的内存和空间)方面有所不同。 游标仅当尝试重新提取行时才会检测到对这些行的更改;数据源无法通知游标对当前提取行的更改。 游标检测并非由游标执行的更改的功能也受事务隔离级别的影响。

以下是SQL Server支持的四种 ODBC 游标类型:

  • 只进游标不支持滚动;它们只支持游标按从头到尾的顺序提取行。

  • 打开游标时,静态游标在 tempdb 中生成。 它们始终显示结果集,就像打开光标时一样。 它们从不会反映对数据的更改。 SQL Server 静态游标始终是只读的。 由于静态服务器游标是作为 tempdb 中的工作表生成的,因此游标结果集的大小不能超过SQL Server允许的最大行大小。

  • 打开由键集驱动的游标时,该游标的结果集中各行的成员身份和顺序是固定的。 可通过游标显示对非键列的更改。

  • 动态游标与静态游标相对。 动态游标反映对结果集中的行的所有更改。 结果集中的行数据值、顺序和成员在每次提取时都会改变。

另请参阅

使用游标 (ODBC)