Я создал материализованное представление с DI_TEST_ALпользователем, назовем его MY_MVIEW. Он отображается в USER_OBJECTSтаблице как MATERIALIZED VIEW, я пытаюсь отбросить его, я получаю сообщение об успехе, но объект все еще там. Фактически, если я пытаюсь воссоздать его, я получаю сообщение об ошибке типа «объект уже существует».
Я вижу, что есть таблица с таким же именем, принадлежащая другой схеме. Я предполагаю, что это не должно вызывать проблемы, но я хотел упомянуть об этом.
Вот вывод SQL * Plus:
SQL*Plus: Release 11.2.0.1.0 Production on Mon Aug 1 17:01:50 2011
SQL> select object_name, object_type, owner from all_objects where object_name = 'MY_MVIEW';
OBJECT_NAME OBJECT_TYPE OWNER
----------- ----------------- ----------
MY_MVIEW MATERIALIZED VIEW DI_TEST_AL
MY_MVIEW TABLE DIDEV11
SQL> DROP MATERIALIZED VIEW MY_MVIEW;
Materialized view dropped.
SQL> select object_name, object_type, owner from all_objects where object_name = 'MY_MVIEW';
OBJECT_NAME OBJECT_TYPE OWNER
----------- ----------------- ----------
MY_MVIEW MATERIALIZED VIEW DI_TEST_AL
MY_MVIEW TABLE DIDEV11
SQL>
Я дважды проверил свое разрешение и DROP ALL MATERIALIZED VIEWSпредоставлен DI_TEST_ALпользователю.
STATUSв отборное на ALL_OBJECTS. У меня тоже есть эта проблема, и для меня статус на материализованном представлении есть INVALID.
DO_OPP_SEARCH_MVIEW?