本文主要是介绍ORA-00980 同义词转换不再有效(ORA-00980: synonym translation is no longer valid),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天测试部在跑系统时,老是会报ORA-00980错误。发现同义词有问题。
同义词创建时,不会去检测内容的准确性,即如果表不存在,也可以创建该表的同义词,但是select时会报ORA-00980 同义词转换不再有效(ORA-00980: synonym translation is no longer valid)的错误。
Tom对此错误的解释:
That error
simply means "synonym is still here, but the object it points to is inaccessible". It
could be inaccessible due to a missing grant, or due to the object not being there.
You need to find out what synonym it is, query the data dictionary to figure out what
object it points to and figure out why you no longer have access to that object.
ops$tkyte@ORA920> create synonym s for t;
Synonym created.
ops$tkyte@ORA920> select * from s where rownum = 1;
C
----------
1
ops$tkyte@ORA920> drop table t;
Table dropped.
ops$tkyte@ORA920> select * from s where rownum = 1;
select * from s where rownum = 1
*
ERROR at line 1:
ORA-00980: synonym translation is no longer valid
TOM解释:http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:7095288486502
这篇关于ORA-00980 同义词转换不再有效(ORA-00980: synonym translation is no longer valid)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!