У меня есть объект под названием cot_ntn_pi_v
. Мне сказали, что это синоним. Он не отображается в таблице all_synonyms. Это выглядит как представление или таблица, но я не могу найти его в таблице всех объектов. Я могу выбрать из него, но я не могу удалить его, так как он «не существует», и я не могу создать новую таблицу с таким же именем, как «имя уже используется другим объектом».
Я схожу с ума или делаю что-то действительно глупое?
oracle
oracle-10g
BON
источник
источник
Ответы:
Типы объектов в том же пространстве имен, что и таблица:
Поэтому это, вероятно, один из тех типов. Если вы можете выбрать из него, тогда он исключает первые пять, оставляя его в виде таблицы, представления, частного синонима или материализованного представления.
Когда вы искали
all_objects
и т.д., вы использовали верхний регистр? Например,Если вы используете какой-либо инструмент, такой как SQL Developer или Toad, вы можете позволить ему описать объект для вас. Выделите имя в инструменте и нажмите «
Shift-F4
Разработчик» или «F4
Жаба». Жаба дает много описания объекта, в то время как Developer, на вкладке Details, будет иметь строку с нимTABLE_NAME
илиMVIEW_NAME
внутри него, и это покажет вам, что это такое.Как только вы узнаете, что это такое, вам будет легче узнать, как это бросить.
источник
Вы, возможно, не сможете увидеть объект в таблицах ALL_%, если у вас нет каких-либо прав доступа к самому объекту, поэтому проверьте в таблице DBA_OBJECTS (для этого вам понадобятся права доступа / соответствующим образом предоставленный пользователь):
Если это не дает никакого результата, вы можете проверить в таблицах словаря необработанных данных Oracle следующий запрос:
источник