declare
v_id employees.employee_id%type;
v_sal employees.salary%type;
cursor cur is select employee_id,salary from employees;
begin
open cur;
loop
fetch cur into v_id,v_sal;
if v_sal<3000 then
update employees set salary=salary+100 where employee_id=v_id;
dbms_output.put_line(v_id||'的工資由'||(v_sal-100)||'調整為'||v_sal);
end if;
fetch cur into v_id,v_sal;--這句是不是應該寫這里?
end loop;
dbms_output.put_line(cur%rowcount);
close cur;
end;
uj5u.com熱心網友回復:
loopfetch cur into v_id,v_sal;
exit when cur%NOTFOUND;
if v_sal<3000 then
update employees set salary=salary+100 where employee_id=v_id;
dbms_output.put_line(v_id||'的工資由'||(v_sal-100)||'調整為'||v_sal);
end if;
-- fetch cur into v_id,v_sal;--這句是不是應該寫這里?
end loop;
uj5u.com熱心網友回復:
缺少游標退出條件參照下面的內容看看https://blog.csdn.net/Alen_Liu_SZ/article/details/80527593
uj5u.com熱心網友回復:
缺少退出loop的條件,具體可以參考1樓的建議。轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/11572.html
標籤:基礎和管理
上一篇:orcal資料庫新建索引之后,代碼中的增刪改查的陳述句還需要修改嗎?
下一篇:insert操作時間超長
