【发布时间】:2021-01-22 10:47:34
【问题描述】:
这里有一个示例,我使用显式游标来解决任务。
set serveroutput on
DECLARE
CURSOR c_1
IS
SELECT
LNR, LFNDNR, DATUM, STUECK, ANR
FROM
lagerbuchung;
CURSOR c_2(p_LNR INT)
IS
SELECT
ORT
FROM
LAGER
WHERE
lager.LNR = p_LNR;
v_ort varchar(45);
BEGIN
FOR v_rec IN c_1
LOOP
open c_2(v_rec.LNR);
fetch c_2into v_ort;
DBMS_OUTPUT.PUT_LINE(': ' || v_rec.LNR || ' : ' || v_rec.LFNDNR ||' : ' || v_rec.DATUM ||' : ' || v_rec.STUECK || ' : ' || v_rec.ANR || ' : ' || v_ort );
close c_2;
END LOOP;
END;
所以我的问题是,显式 foreach 游标和隐式 foreach 游标有什么区别?
代码相似吗?哪个更好用?我试图重现代码,但使用隐式 foreach 游标,但没有管理并放弃。
【问题讨论】:
标签: sql oracle plsql database-cursor