मुझे लगता है कि जस्टिन सही रास्ते पर है। मुझे लगता है कि इसका वास्तव में मतलब है कि mydbowner.mytable मौजूद नहीं है।
यहाँ एक उदाहरण है:
SQL> conn mbobak
Enter password:
Connected.
SQL> drop table mytable;
drop table mytable
*
ERROR at line 1:
ORA-00942: table or view does not exist
SQL> create public synonym mytable for mbobak.mytable;
Synonym created.
SQL> select * from mytable;
select * from mytable
*
ERROR at line 1:
ORA-01775: looping chain of synonyms
मुझे लगता है कि क्या हो रहा है कि Oracle mytable को हल करने की कोशिश करता है, वहाँ mbobak स्कीमा में कोई mytable है, इसलिए इसे सार्वजनिक रूप से इसके लिए लग रहा है, यह यह पाता है, और कहा कि देखता है यह mbobak.mytable को इंगित करता है। लेकिन, mbobak.mytable मौजूद नहीं है, इसलिए, यह सार्वजनिक में mytable की तलाश में है, और लूप है।
और वास्तव में, यदि आप mytable बनाने के लिए, त्रुटि दूर चला जाता है:
SQL> create table mytable as select * from dual;
Table created.
SQL> select * from mytable;
D
-
X
1 row selected.
SQL> drop table mytable;
Table dropped.
SQL> select * from mytable;
select * from mytable
*
ERROR at line 1:
ORA-01775: looping chain of synonyms
हाँ, मैं, पता है कि वास्तव में पूरी तरह से मतलब नहीं है, के रूप में एक बार सार्वजनिक पर्याय mbobak.mytable का संकल्प लिया, और यह नहीं मिला, ऐसा लगता है, इसे एक त्रुटि ओआरए-9 42 "तालिका या दृश्य मौजूद नहीं होना चाहिए", जो मुझे और अधिक समझ में आता है।
लेकिन, ऐसा लगता है कि यह कैसे काम करता है।
QED
आशा है कि मदद करता है।
स्रोत
2012-01-24 22:45:18
दो उत्तरों सही हैं। मैंने कुछ प्रकार के टाइपो और समानार्थी को कुछ भी नहीं बताया। – Joe