ORA-04043艰难的解决之路
前言做项目在Oracle数据库里创建存储过程时,遇见了一个奇葩的问题: 创建了一个名为:
删除的时候 无论是PLSQL上手动删
当时为了赶项目,负责人让先将这个放在一边,重新创建了一个其他名字的存储过程,将就着用了。 项目完成后,仔细分析,终于解决,特此整理成文 提示:* 本文详细的描述了解决该问题的过程,篇幅比较长,如果急需解决问题请直接跳到 首先要知道
解决该存储过程为: CREATE OR REPLACE PACKAGE "PACK_KC_Check" as type cur is ref cursor;
---====中间的具体存储过程就不详细描述了
end PACK_KC_Check;
1.尝试方法1遇见问题,当然下意识的去搜索一下 ORA-04043,看到很多都说是格式的问题,说删除的时候带上 即
结果:尝试之,卒。2.尝试方法22.1.验证因为删除时一直提示
所以肯定要验证一下,到底是不是存在该存储过程,该存储过程到底
查询全部的存储过程后,发现,该存储过程分明就存在 2.2.反思能够 肯定是某个环节出错了 仔细对比了一下正常的存储过程与该存储过程的 发现该存储过程是INVALID(无效的) 2.3修改CREATE OR REPLACE PACKAGE "PACK_KC_Check" as type cur is ref cursor;
end "PACK_KC_Check";
2.4结果:编译能够通过,删除仍然失败
3.尝试方法3解决到现在,有种 慢慢冷静下来,继续看 删除的提示是:
* 前后的大小写不一样!!!!!!!!!! *
再次修改 CREATE OR REPLACE PACKAGE "PACK_KC_CHECK" as type cur is ref cursor;
end "PACK_KC_CHECK";
删除成功总结
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |