oracle – 如何从有效的包中获取“ORA-00904 :: invalid identif
发布时间:2020-12-12 13:15:24 所属栏目:百科 来源:网络整理
导读:我有一个有效的过程,并在其中有一个insert..select语句.现在有一种情况,执行此过程会从此语句中生成“ORA-00904 :: invalid identifier”错误.这在理论上甚至可能如何?没有触发器或动态SQL. 此外,sqlerrm中的ORA-00904文本没有指向Oracle认为无效的任何特定
我有一个有效的过程,并在其中有一个insert..select语句.现在有一种情况,执行此过程会从此语句中生成“ORA-00904 :: invalid identifier”错误.这在理论上甚至可能如何?没有触发器或动态SQL.
此外,sqlerrm中的ORA-00904文本没有指向Oracle认为无效的任何特定标识符的指针. Oracle 9.2.0.8版 EDIT2: 事实证明,从该选择中调用的函数存在问题(将其替换为常量并且一切正常).可能这就是ORA-00904没有给出标识符的原因.尽管如此,问题仍然存在 – 如果没有动态sql的预编译代码会出现此错误? 解决方法我认为当您访问包有效但程序包需要编译并抛出异常的包时,可能会发生这种错误.另一个原因可能是使用authid current_user的代码,它以当前用户的权限运行(不像拥有用户的权限那样正常).使用one调用此过程可能会失败,而当使用其他用户执行时,此过程可能会失败 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |