问题: -
表格存在于数据库1中。
使用在Database2中创建的指向数据库1的Db链接在数据库2中创建表的同义词。
在数据库3中创建的另一个DB链接指向数据库2。
在访问数据库2中存在的表的同义词时,它给出错误: - ORA-00980同义词翻译不再有效
所以我想我们无法访问远程数据库中存在的同义词,并且其对象存在于另一个远程数据库中。
对上述情况有任何建议。什么是上述问题的最佳解决方案。
答案 0 :(得分:1)
似乎从DB3到DB1的db-link可能会有所帮助。
请参阅Ask Tom(通知,DB3 <- DB2 <- DB1
下方DB1
编制的程序):
原因
错误2829591从PL / SQL查询中报告了此问题 9I中的程序 - &gt; 8I-&GT; 7.3.4,获得ORA-980。这个bug已经关闭 作为&#39;不是一个BUG&#39;由于以下原因
PL / SQL无法指示中间数据库(DB2)跟随数据库 编译阶段的链接。因此为了这个PL / SQL 阻止编译和运行,数据库链接dblink1和dblink2 应该在前端数据库 - DB1上定义。在运行时 数据库链接dblink2将按预期在DB2中查找。
解
要实施此解决方案,请执行以下步骤:
- 在DB1上创建指向DB3的数据库链接dblink2 ...
- 在DB1上创建并编译PL / SQL块。
醇>