使用sqldeveloper时无输出,完全没有错误

问题描述 投票:0回答:1
@C:\Users\4\Desktop\dbdrop;
@C:\Users\4\Desktop\dbcreate;
SET SERVEROUTPUT ON;
 begin
  2    for cur_r in
  3      (select order_id, company_name, order_date
  4       from orders
  5       where order_date < trunc(sysdate)
  6         and rownum <= 5
  7      )
  8    loop
  9      dbms_output.put_line('------------');
 10      dbms_output.put_line('Order ID   = ' || cur_r.order_id);
 11      dbms_output.put_line('Order date = ' || to_char(cur_r.order_date, 'dd.mm.yyyy'));
 12      dbms_output.put_line('Company    = ' || cur_r.company_name);
 13    end loop;
 14  end;
  /

错误报告-ORA-06550:第3行,第27列:PL / SQL:ORA-00904:“ COMPANY_NAME”:无效的标识符ORA-06550:第3行,第10列:PL / SQL:忽略了SQL语句ORA-06550:第10行,第49列:PLS-00364:循环索引变量'CUR_R'使用无效ORA-06550:第10行,第7列:PL / SQL:语句被忽略ORA-06550:第11行,第58列:PLS-00364:循环索引变量'CUR_R'使用无效ORA-06550:第11行,第8列:PL / SQL:语句被忽略ORA-06550:第12行,第49列:PLS-00364:循环索引变量'CUR_R'使用无效ORA-06550:第12行,第7列:PL / SQL:语句被忽略06550。00000-“%s行,%s列:\ n%s”*原因:通常是PL / SQL编译错误。*操作:

sql plsqldeveloper
1个回答
0
投票

在SQL Developer中,您不能复制/粘贴我以前在SQL * Plus中写的内容;您将省略行号(和SQL>提示),仅使用此代码:

set serveroutput on
begin
  for cur_r in
    (select order_id, company_name, order_date
     from orders
     where order_date < trunc(sysdate)
       and rownum <= 5
    )
  loop
    dbms_output.put_line('------------');
    dbms_output.put_line('Order ID   = ' || cur_r.order_id);
    dbms_output.put_line('Order date = ' || to_char(cur_r.order_date, 'dd.mm.yyyy'));
    dbms_output.put_line('Company    = ' || cur_r.company_name);
  end loop;
end;
/
© www.soinside.com 2019 - 2024. All rights reserved.