静态游标(数据库引擎)

静态游标的完整结果集在打开游标时建立在 tempdb 中。静态游标总是按照打开游标时的原样显示结果集。

游标不反映在数据库中所做的任何影响结果集成员身份的更改,也不反映对组成结果集的行的列值所做的更改。静态游标不会显示打开游标以后在数据库中新插入的行,即使这些行符合游标 SELECT 语句的搜索条件。如果组成结果集的行被其他用户更新,则新的数据值不会显示在静态游标中。静态游标会显示打开游标以后从数据库中删除的行。静态游标中不反映 UPDATE、INSERT 或者 DELETE 操作(除非关闭游标然后重新打开),甚至不反映使用打开游标的同一连接所做的修改。

Microsoft SQL Server 2005 静态游标始终是只读的。

由于静态游标的结果集存储在 tempdb 的工作表中,因此结果集中的行大小不能超过 SQL Server 表的最大行大小。

Transact-SQL 称静态游标为不敏感游标。一些数据库 API 将这类游标识别为快照游标。