数据库 存储过程 游标的问题

数据库 存储过程 游标的问题,第1张

end

from Reports

where Cno=@Cno) A

group by 成绩级别

close Cur_cursor

open Cur_cursor

fetch Cur_cursor into @Cno

end

把中间的

close Cur_cursor

open Cur_cursor

去掉

因为你没有提交更新。

应该这样写:

declare

cursor cursor1 is select from emp;

firstly number;

secondly number;

begin

for i in cursor1

loop

firstly:=isal;

if isal<1000 then

update emp set sal=sal+500 where sal=isal;

secondly:=isal+500;

elsif isal<=4000 and isal>=1000 then

update emp set sal=sal+100 where sal=isal;

secondly:=isal+100;

end if;

dbms_outputput_line('员工名:'||iename||'原工资:'||firstly||'目前工资:'||secondly);

end loop;

commit;

end;

DECLARE @i int

SET @i= 0

UPDATE SET b = @i,@i=@i+1

如果是按插入的顺序来重新排的话。这样最快。如果你的表中有时间字段。可以按这个字段来排序,不过就要用游标了。

以上就是关于数据库 存储过程 游标的问题全部的内容,包括:数据库 存储过程 游标的问题、oracle数据库的游标使用问题、sql server数据库中用游标进行更新等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10167562.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存