我写了一存储过程,执行后发现速度很慢,后将中间的代码全删掉,只留下下面的csor_aaa部门,可执行时速度还是很慢,不知怎么解决!
v_mygz有3百多条记录CURSOR csor_aaa IS select pu_id,kxid from v_mygz t
beginopen csor_aaa;
loop
fetch csor_aaa into Str_PU_id,Str_KX;
exit when csor_aaa%notfound;
update gzjj set xms=(值) where trim(pu_id)=to_char(Str_PU_ID) and ffrq=to_date('2006-08-01','yyyy-mm-dd') ;
commit;
end loop;
close csor_aaa;
end;
v_mygz有3百多条记录CURSOR csor_aaa IS select pu_id,kxid from v_mygz t
beginopen csor_aaa;
loop
fetch csor_aaa into Str_PU_id,Str_KX;
exit when csor_aaa%notfound;
update gzjj set xms=(值) where trim(pu_id)=to_char(Str_PU_ID) and ffrq=to_date('2006-08-01','yyyy-mm-dd') ;
commit;
end loop;
close csor_aaa;
end;
表索引已加上了,v_mygz是视图
gzjj 这个表数据量大么
可能是更新的时候满吧如果是更新的时候慢 ,要在gzjj 加索引
没COMMIT也是一样的哦