SQL Server 提取类型首先不能用于只进游标

vptzau2j  于 2022-11-21  发布在  其他
关注(0)|答案(2)|浏览(342)

如何解决这个问题,当我尝试重用游标时,在sql-server中没有遇到任何有用的信息

5f0d552i

5f0d552i1#

请参阅:DECLARE CURSOR (Transact-SQL)

DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ]   
     [ FORWARD_ONLY | SCROLL ]

...
FORWARD_ONLY指定游标只能从第一行滚动到最后一行。FETCH NEXT是唯一支持的提取选项。
想象一辆没有倒档的汽车= FORWARD_ONLY(因此您不能后退)
声明游标时需要指定SCROLL。但是,几乎总是使用SQL(无游标)更快。

4nkexdtk

4nkexdtk2#

Paul麦克斯韦的答案是正确的,只是添加了一个权威参考,请查看备注部分:
如果在ISO样式的DECLARE CURSOR语句中未指定SCROLL选项,则NEXT是唯一支持的FETCH选项。如果在ISO样式的DECLARE CURSOR语句中指定了SCROLL,则支持所有FETCH选项。
这意味着FORWARD_ONLY在缺省情况下是隐藏的,并且只有在声明游标时才是隐藏的

DECLARE cursor_name CURSOR SCROLL ...

FETCH FIRST可用。

相关问题