今天做oracle 9i的实验,内容是“创建一个过程avg_sal,用于输出emp表中的某个部门的平均工资,并在PL/SQL匿名块调用该过程输出部门SALES的平均工资”,所写过程如下:
    create or replace procedure sys.avg_sal
    (department varchar2,avgsal number)is
    begin
    select ENAME,avg(sal) into deparment,avgsal
    from SCOTT.EMP
    where ENAME=department;
    end avg_sal;出错信息:“行号= 1 列号= 27 错误文本= PLS-00103: 出现符号 "CREATE"在需要下列之一时:  ( ; is with authid as    cluster compress order using compiled wrapped external    deterministic parallel_enable pipelined 

请问各位怎么解决这个问题?

解决方案 »

  1.   

    create or replace procedure avg_sal(department  out varchar2,
                                        avgsal     out  number) is
    begin
      select ENAME, avg(sal)
        into department, avgsal
        from SCOTT.EMP
       where ENAME = department;
    end avg_sal;
      

  2.   

    create or replace procedure sys.avg_sal
      (department in  varchar2,avgsal out number)is
      begin
      select avg(sal) into avgsal
      from SCOTT.EMP
      where ENAME=department;
      end avg_sal;