Oracle 9i には 2 つの手順 (A、B) があります。個人的には、それらはすべて正常に機能します。しかし、A を呼び出し、次に B を呼び出すプロシージャ C を作成することはできません。C が A を呼び出す前に、A が B を呼び出す前に dbms_output.put_line を配置し、B に 1 つを配置します。どういうわけか、最初の put_line だけが機能します。これが機能しない理由として考えられるものは何ですか? ありがとうございました、
CREATE OR REPLACE PROCEDURE C (num in number)
as
begin
for r in (select col1 from Table1)
loop
dbms_output.put_line ('Inside C');
A(r.col1);
end loop;
end;
CREATE OR REPLACE PROCEDURE A (var1 IN varchar2)
AS
v1 varchar2;
cursor c1(c_var in varchar2) is
select col1 from table2 where col2=c_var;
BEGIN
open c1(var1);
loop
fetch c1 into v1;
exit when c1%notfound;
dbms_output.put_line ('Inside A');
B(v1);
end loop;
close c1;
END;