Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server t-sql游标:does";先从";是否重新生成光标的内容?_Sql Server_Cursor - Fatal编程技术网

Sql server t-sql游标:does";先从";是否重新生成光标的内容?

Sql server t-sql游标:does";先从";是否重新生成光标的内容?,sql-server,cursor,Sql Server,Cursor,我有一段其他人的代码,基本上是这样做的: declare X cursor static for select * from stuff open cursor X fetch next from X while @@fetch_status = 0 begin do stuff fetch next from X end fetch first from X while @@fetch_status = 0 begin do different stuff fetch nex

我有一段其他人的代码,基本上是这样做的:

declare X cursor static for select * from stuff
open cursor X
fetch next from X
while @@fetch_status = 0
begin
  do stuff
  fetch next from X
end

fetch first from X
while @@fetch_status = 0
begin
  do different stuff
  fetch next from X
end
是的,我知道光标不好/不再流行/等等。我没有写它。我只需要把它修好。现在谈问题:


如果基础游标后面的数据在第一个循环和第二个循环之间发生变化,那么第二个游标循环会看到与第一个游标循环不同的数据吗?还是静态限定符阻止了这种情况?

光标检索的数据不会更改。如文件所述:

静止的

定义一个光标,使 要使用的数据的临时副本 通过光标。所有向 从这一点可以回答这些问题 tempdb中的临时表;所以,, 对基表所做的修改如下: 未反映在返回的数据中 获取对此游标所做的操作,以及 游标不允许修改


我差不多也是这样读的,但我不确定。谢谢,你一回答我就不愿意了。显然,太早了。