今天遇到一个问题,说起来也简单,但是困扰我半天。
升级数据库后,一个功能无法运行,在后台观察到其sql,发现sql中包含一个包执行不了,报错ora-00904 invalid identifier
wmsys.dbms_lob.xxx,就是这个包。
select * from dba_source;可以从这里面查到dbms_lob是属于sys的。
把sql中wmsys.dbms_lob.xxx改为sys.dbms_lob.xxx或dbms_lob.xxx即可执行。
但是开发们并不希望修改源代码,最后经过思索,找到解决办法:
登陆wmsys用户,然后执行create synonym dbms_lob for sys.dbms_lob;
建立一个同义词即可。