我建了一个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;
不好意思啊。。。呵呵。。