Oracle-9i

當基表不存在時,為什麼我會收到不正確的錯誤“ORA-01775: looping chain of synonyms”?

  • October 2, 2015

我使用 Informatica 管理一些將數據載入到 Oracle 9i 數據倉庫中的 ETL 流程。

今天我在 Informatica 會話日誌中收到以下錯誤:

Message: Database driver error...
CMN_1022 [DELETE FROM SOME_TABLE 
WHERE PERIOD_NAME = 'OCT-12'

ORA-01775: looping chain of synonyms

Database driver error...
Function Name : executeDirect
SQL Stmt : DELETE FROM SOME_TABLE 
WHERE PERIOD_NAME = 'OCT-12'
Oracle Fatal Error
Database driver error...
Function Name : ExecuteDirect

Oracle Fatal Error
]

現在這是一個印刷錯誤,表名拼寫錯誤。Oracle 錯誤顯然將我們引向了錯誤的方向……所以只是想了解為什麼在同義詞沒有問題時會顯示此錯誤。

當你有一個“懸空”同義詞時會發生這種情況,因為它指向它自己。

例如:

SQL> create table blah ( a number );

Table created.

SQL> create public synonym blah for blah;

Synonym created.

SQL> drop table blah;

Table dropped.

SQL> select * from blah;
select * from blah
             *
ERROR at line 1:
ORA-01775: looping chain of synonyms


SQL>

引用自:https://dba.stackexchange.com/questions/31340