Oracle出現ORA-01775: 同義詞的迴圈鏈問題

mengzhaoliang發表於2010-09-20

1、  當用程式連線或者用plsql查詢同義詞時,如果出現ora-01775:同義詞的迴圈鏈這樣的問題。

一般是因為存在同義詞,但同義詞沒有相應的物件。

 

2、  先查有沒有迴圈的同義詞。

select * from dba_synonyms
where table_owner=
'TEST'

and synonym_name<>table_name;

 

沒有記錄。

 

3、  再查同義詞沒有物件的資料庫物件

select * from dba_synonyms
where table_owner=
'TEST'
and
synonym_name in
(select a.synonym_name from dba_synonyms a where a.table_owner=
'TEST'
minus
select object_name from user_objects)

 

4、  把查詢出來的結果進行查詢表

select * from DRILL_PRESON

如果該同義詞沒有相應的物件,則會包ora-01775的錯誤

 

5、  把這個同義詞刪除

drop public synonym DRILL_PRESON

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12778571/viewspace-674453/,如需轉載,請註明出處,否則將追究法律責任。

相關文章