Я створив з користувачем матеріалізований вигляд 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
?