CREATE OR REPLACE procedure show_line(ip_line_length in number,ip_separator in varchar2)
        actual_line varchar2(150);

begin 
  for idx in 1..ip_line_length loop
   actual_line :=actual_line ||ip_separator;
  end loop;
         dbms_output.put_line(actual_line);
exception when others then 
        --  dbms_output.put_line(sqlerrm);
end;

解决方案 »

  1.   

    應該這樣寫
    create or replace procedure show_line(ip_line_length in number,ip_separator in varchar2)
    as
            actual_line varchar2(150);begin
      for idx in 1..ip_line_length loop
       actual_line :=actual_line ||ip_separator;
      end loop;
             dbms_output.put_line(actual_line);
    exception when others then
            null;
    end;你有exception 就不應該把dbms_output.put_line(sqlerrm); 注釋掉
    知道不
      

  2.   

    CREATE OR REPLACE procedure show_line(ip_line_length in number,ip_separator in varchar2)
         is    actual_line varchar2(150);

    begin 
      for idx in 1..ip_line_length loop
       actual_line :=actual_line ||ip_separator;
      end loop;
             dbms_output.put_line(actual_line);
    end;
      

  3.   

    CREATE OR REPLACE procedure show_line(ip_line_length in number,ip_separator in varchar2)
    AS
            actual_line varchar2(150);

    begin 
      for idx in 1..ip_line_length loop
       actual_line :=actual_line ||ip_separator;
      end loop;
             dbms_output.put_line(actual_line);
    exception when others then 
             dbms_output.put_line(sqlerrm);
    end;
      

  4.   

    少写了一个AS,再就是不能注掉dbms_output.put_line(sqlerrm);