Генерировать произвольную ошибку для теста обновления материализованного представления

#oracle #oracle11g #oracle10g #oracle-sqldeveloper

Вопрос:

Спокойной ночи, друзья,

Я создаю скрипт для отправки почты, когда обновление материализованного представления обновляется неправильно.

Как я могу создать простой тестовый сценарий, создать сценарий, который генерирует ошибку интенсивным способом, чтобы проверить, работает ли отправка почты при срабатывании конкретной ошибки обновления.

 CREATE MATERIALIZED VIEW emp_mv
REFRESH COMPLETE
ON DEMAND

AS
    SELECT * FROM XXXXX;
 

генерируйте ошибку при выполнении обновления.

exec DBMS_MVIEW.ОБНОВИТЬ(’emp_mv’);

Спасибо,

Ответ №1:

Что — то вроде этого дает вам некоторый контроль

 CREATE MATERIALIZED VIEW emp_mv
REFRESH COMPLETE
ON DEMAND
AS
SELECT x.*, 1 / ( select count(*) from t ) flag
FROM XXXXX x;
 

и в вашей таблице T либо нет строк (приводит к ошибке), либо >0 строк (работает нормально).

Комментарии:

1. Это мне очень помогло, но я не понял ошибки. ((Процедура PL / SQL успешно завершена)) Что я сделал, так это удалил таблицу T, как только материализованное представление было создано, затем там была выдана ошибка. Огромное спасибо.