set serverout ondeclare a varchar2(100);
begin
test(a);
dbms_output.put_line(a);
end;

解决方案 »

  1.   

    楼上的楼上可以,调用下试试先:-)
    不过注意,如果你的查询返回了多条记录,Procedure运行会出错噢。
      

  2.   

    建议改成这样:
    CREATE OR REPLACE PROCEDURE test(
    Cn out varchar2
    )
    AS
    BEGIN
      select dwdm into Cn from xt_dwxx where sjdm='1113331' and rownum = 1;
    EXCEPTION
      WHEN NO_DATA_FOUND THEN
         dbms_output.put_line("未找到符合条件的值");end test;
    调用:
    set serverout ondeclare a varchar2(100);
    begin
    test(a);
    dbms_output.put_line(a);
    end;
      

  3.   

    过程名称和end结束时指定的名称不一致create or replace porocedure test
    end test_2改为:
    end test;
      

  4.   

    还有啊,结尾的时候是打字的笔误,原来的存过中就是end test;谢谢