当前位置:首页 > 正文

高手帮忙看看我的存储过程

作者:烟栀发布时间:2023-03-05浏览:457


备注--**的地方修改了两处。
create or replace procedure procedurefm as
v_stz temp_2009stz2.id1%type;
v_stzid varchar2(13);
v_temp varchar2(3);
cursor c_ysstz(stzpreid varchar2) is
select id1
from temp_2009stz2
where substr(id1, 1, 13) = stzpreid
for update;
cursor c_preid is
select distinct (substr(id1, 1, 13)) from temp_2009stz2;
begin
open c_preid;
loop
fetch c_preid
into v_stzid; --提取游标
v_temp := '000';
if c_preid%FOUND THEN
open c_ysstz(v_stzid);
loop
fetch c_ysstz
into v_stz;
if c_ysstz%FOUND THEN
v_temp := v_temp + 1;
update temp_2009stz2
set id1 = v_stz + to_char(v_temp,'000') --**应该加上序号
where current of c_ysstz;
END IF;
end loop;
close c_preid; --**移到此处,关闭游标c_preid。
end if;
end loop;
close c_ysstz;
end;


声明:部分资源转载自互联网,转载目的在于传递更多知识,并不代表本网赞同其观点和对其真实性负责。如有侵权或者知识有谬误之处,麻烦通知删除,谢谢!联系方式: zzsla2022#163.com