日期:2014-05-17  浏览次数:21351 次

ORA-04063: package body "SYSTEM.EMP_PKG" 有错误
我建了一个emp_package包,在command窗口中调用时报的错误为ORA-04063: package body "SYSTEM.EMP_PKG" 有错误,,,打开包文件发现包前有个叉号。
------解决方案--------------------
把创建语句贴出来。 
还有 尽量不要system用户下创建包。 不是个好习惯
------解决方案--------------------
不贴代码,上哪知道,哪里有问题啊,楼主发帖需要注意了,呵呵。
------解决方案--------------------
package 包名和body名要相同的吧!
------解决方案--------------------
create or replace package emp_pkg is
  procedure update_sal(name varchar2,newsal number);
  function annual_income(name varchar2)return number;
end;

create or replace package body emp_pkg is
  procedure update_sal(name varchar2,newsal number)
  is
  begin
    update emp set sal=newsal where lower(ename)=lower(name);
  end;
  function annual_income(name varchar2)return number
  is
    annual_salary num(7,2);
  begin
    select sal*12+nvl(comm,0) into annual_salary from emp where lower(ename)=lower(name);
    return annual_salary;
  end;
end;
不好意思啊。。。呵呵。。