oracle包编译错误
Error querying database. Cause: java.sql.SQLException: ORA-04063: package body "P_PKG" 有错误。
ORA-04063错误表示Oracle数据库中的P_PKG包体存在编译错误,导致无法正常执行。
这时候我们可以先去检查包编译错误详情。我在这里本来想直接debug这个存储过程的,但是,都没进存储过程内部方法就报错,这里就很明显就是编译有错误。
所以这里直接用SQL语句去看这个包体编译的错误详情。
SELECT name, type, line, position, text
FROM user_errors
WHERE name = 'P_PKG'
ORDER BY sequence;
name后面换成自己的包名就可以了。
执行后如图:
这里提示在310行25列附件的这个组件没有声明。后面排查是被注释掉了。
如果大家这里没有问题,那大概就是内部方法有问题。去重新编译包会提示里面的语法错误等。
-- 重新编译包规范
ALTER PACKAGE XXSFC.SFC_PVS_IMP_PKG COMPILE;-- 重新编译包体
ALTER PACKAGE XXSFC.SFC_PVS_IMP_PKG COMPILE BODY;