0
請考慮以下事項。內循環中的動態遊標。多個遊標
declare
v_name person.name%TYPE;
v_surname person.surname%TYPE;
cursor department_cursor is
select * from department;
cursor person_cursor is
select * from person
where nvl(name, '') = nvl(v_name, '');
begin
open department_cursor;
open person_cursor;
for department_row in department_cursor loop
v_name := department_row.name;
v_surname := department_row.surname;
for person_row in person_cursor loop
DBMS_OUTPUT.PUT_LINE('I got here:'||person_row.p_id);
end loop;
end loop;
close person_cursor;
close department_cursor;
end;
/
不要試圖瞭解它的功能。這只是實際代碼的剝離/破壞版本。 雖然果汁仍然存在。我想要做的是有兩個遊標。第二個遊標是動態的,它取決於第一個遊標返回的行。
以上結果爲ORA-06511: PL/SQL: cursor already open
。
我不知道這個語法也打開了光標。謝謝。有效。我會標記它太多分鐘。 – alkis 2014-09-24 14:26:54