oracle使用cursor動態更新線上初始化資料

2021-06-14 17:11:36 字數 877 閱讀 8065

背景:線上系統初始化資料需要調整,同時剩餘數量也需要動態的調整

declare

cursor c_res

is select b.present_name,b.present_present_left_num,b.present_num from table b;

commitsum number(10);

leftnum number(4);

presentnum number(4);

begin

commitsum :=0;

presentnum:=0;

for r_res in c_res

loop

commitsum :=commitsum+1;

leftnum:=r_res.present_num-r_res.present_left_num;

case

when r_res.present_name='1';

then presentnum=100;

when r_res.present_name='2';

then presentnum=200;

end case;

update table set present_num=presentnum,present_left_num = presentnum-leftnum

where present_name = r_res.present_name;

if(commitsum>100)

then

commit;

commitsum:=0;

end if;

end loop;

commit;

end;

oracle儲存過程 cursor使用

create or replace procedure test is v count number 4 cursor v c is select from t2voucherhandno begin select count into v count from t2voucherhandno if...

oracle游標cursor簡單使用

oracle游標cursor簡單使用 總共介紹兩種游標 cursor 與 sys refcursor 1 cursor游標使用 sql 簡單cursor游標 students表裡面有name欄位,你可以換做其他表測試 定義 declare 定義游標並且賦值 is 不能和cursor分開使用 curs...

關於oracle的cursor的使用

今天專案突然要用到游標,好久沒有使用了有些生疏,在使用中發現以前沒注意的一些問題,先貼上 procedure p insert wzdeqd abc varchar2,sj varchar2 is v temp varchar2 30 v flows user wz dewzqd mb rowtyp...