访问通过数据库链接在数据库中创建的表同义词

时间:2017-02-11 10:13:32

标签: database oracle plsql

问题: -

表格存在于数据库1中。

使用在Database2中创建的指向数据库1的Db链接在数据库2中创建表的同义词。

在数据库3中创建的另一个DB链接指向数据库2。

在访问数据库2中存在的表的同义词时,它给出错误: - ORA-00980同义词翻译不再有效

所以我想我们无法访问远程数据库中存在的同义词,并且其对象存在于另一个远程数据库中。

对上述情况有任何建议。什么是上述问题的最佳解决方案。

1 个答案:

答案 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中查找。

     

     

要实施此解决方案,请执行以下步骤:

     
      
  1. 在DB1上创建指向DB3的数据库链接dblink2   ...
  2.   
  3. 在DB1上创建并编译PL / SQL块。
  4.   
相关问题