为什么Oracle在包编译中抱怨循环链同义词(ORA01775)?

时间:2014-04-23 17:59:42

标签: oracle oracle11g

我真的需要理解为什么会发生以下行为。

首先,我只是创建一个同义词:

CREATE SYNONYM SYN_NAME FOR MY_TABE@MY_DBLINK;

其次,当我尝试从表中选择行时,会出现以下错误:

ORA-00942: table or view does not exist

很好,桌子确实不存在。

但是当我尝试编译使用上述同义词的Package时,编译错误是:

ORA-01775: looping chain of synonyms

在整个数据库中没有同名的同义词,循环同义词或数据库链接/同义词冲突。当然,当我在目标数据库链接模式中创建表时,错误就会失控。

有人可以解释为什么错误不一样吗?

1 个答案:

答案 0 :(得分:0)

更新到Oracle Database 12c版本后,错误更改回:

ORA-00942: table or view does not exist

如果有人遇到这种异常,答案是它可能是缺少的同义词目标而不是循环同义词。

我希望它有所帮助。