我执行此程序时
create procedure p2 is
cursor c100 is select b.BNO,b.BNAME,b.PUBNAME,b.PRICE
from book b,author a, bo_aut ba
where b.BNO=ba.BNO
and a.ANO=ba.ANO
and a.ANAME='kanetkar';
begin
for x in c100
loop
dbms_output.put_line(x.BNO||' '||x.BNAME||' '||x.PUBNAME||' '||x.PRICE);
end loop;
end;
/
GOT THIS ERROR
第10行的错误:PL / SQL:语句被忽略
1.创建程序p2是
2.光标c100选择b.BNO,b.BNAME,b.PUBNAME,b.PRICE
3.从书b,作者a,bo_aut ba
答案 0 :(得分:1)
您的SQL语句出错(所以select ...
部分)。
如果没有架构,我们无法确定原因,但尝试运行查询本身并找出问题所在。
答案 1 :(得分:0)
光标中的查询一定有错误。我已经将一个等效过程的基本示例与一个有效的查询放在一起:
create or replace procedure p2 is
cursor c100 is
select 'a1' as BNO, 'b1' as BNAME, 'c1' as PUBNAME, 'd1' as PRICE
from dual
union
select 'a2' as BNO, 'b2' as BNAME, 'c2' as PUBNAME, 'd2' as PRICE
from dual;
begin
for x in c100 loop
dbms_output.put_line(x.BNO||' '||x.BNAME||' '||x.PUBNAME||' '||x.PRICE);
end loop;
end;
从这里我得到了预期的输出:
a1 b1 c1 d1
a2 b2 c2 d2
我建议单独运行SQL进行调试。