求救,关于用游标更新数据。
declare
@i int,
@UID varchar(12)
请问下面脚本,执行时为什么说是“游标是 READ ONLY 的“的错误:
Declare csrRst Cursor SCROLL for
SELECT ID FROM table1
OPEN csrRst
FETCH NEXT FROM csrRst INTO @UID
WHILE (@@FETCH_STATUS = 0 )
BEGIN
update TABLE1 SET id=CAST(@i AS VARCHAR(12)) WHERE CURRENT OF csrRst
set @i=@i+1
FETCH NEXT FROM csrRst into @UID
END
CLOSE csrRst
DEALLOCATE csrRst
请帮助解答!多谢了!
问题点数:40、回复次数:8Top
1 楼hjb111(无间波波哥)回复于 2003-08-01 13:42:28 得分 0
应当把@i赋初值!
set @i=0Top
2 楼tj_dns(愉快的登山者)回复于 2003-08-01 13:44:21 得分 0
Declare csrRst Cursor SCROLL for
SELECT ID FROM table1 for updateTop
3 楼hyxyliuyan(不见不散)回复于 2003-08-01 13:51:39 得分 0
select id from table1 for update
我刚才试了一下,不行。
set @i=0 我也试了,也是不行。Top
4 楼nboys()回复于 2003-08-01 13:56:13 得分 0
declare
@i int,
@UID varchar(12)
set @i = 0 --赋给@i一个初始值
Declare csrRst Cursor SCROLL for
SELECT ID FROM table1
OPEN csrRst
FETCH NEXT FROM csrRst INTO @UID
WHILE (@@FETCH_STATUS = 0 )
BEGIN
update TABLE1 SET id=CAST(@i AS VARCHAR(12)) WHERE CURRENT OF csrRst
set @i=@i+1
FETCH NEXT FROM csrRst into @UID
END
CLOSE csrRst
DEALLOCATE csrRstTop
5 楼hyxyliuyan(不见不散)回复于 2003-08-01 14:08:01 得分 0
to--nboys()
你的方法我试过了,不行,还是提示“游标是 READ ONLY 的”.Top
6 楼zclxyh(谁说我不在乎)回复于 2003-08-01 14:39:49 得分 30
试一下这一个
declare
@i int,
@UID varchar(12)
set @i = 0
Declare csrRst Cursor for
SELECT ID FROM table1
OPEN csrRst
FETCH NEXT FROM csrRst INTO @UID
WHILE (@@FETCH_STATUS = 0 )
BEGIN
update TABLE1 SET id=CAST(@i AS VARCHAR(12)) WHERE CURRENT OF csrRst
set @i=@i+1
FETCH NEXT FROM csrRst into @UID
END
CLOSE csrRst
DEALLOCATE csrRst
Top
7 楼chao778899(220330)回复于 2003-08-01 15:05:29 得分 10
declare
@i int,
@UID varchar(12)
set @i = 0
Declare csrRst Cursor for
SELECT ID FROM table1
OPEN csrRst
FETCH NEXT FROM csrRst INTO @UID
WHILE (@@FETCH_STATUS = 0 )
BEGIN
update TABLE1 SET id=CAST(@i AS VARCHAR(12)) WHERE ID=@UID
set @i=@i+1
FETCH NEXT FROM csrRst into @UID
END
CLOSE csrRst
DEALLOCATE csrRst
Top
8 楼hyxyliuyan(不见不散)回复于 2003-08-01 15:14:43 得分 0
to zclxyh(常来)
现谢zclxyh(常来)
可以用了,能帮助解释一下吗? 只是去掉了"SCROLL",scroll,是不是指由标移动的方式,并没有指明游标是否可读。多谢高手指教!!Top



