Как сделать автоматическое обновление материализованных представлений

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

Я попробовал следующий код (полное обновление начните с создания материализованного представления, которое обновляется каждые 5 минут), но не работало. Также этот код является решением для обновления каждые 1 минуту.

Я хочу решение при вставке данных. Является ли это возможным?

Create Materialized view temp_mv refresh complete start with (sysdate) next (sysdate+1/1440) with rowid as select * from temp;

1 ответ

Вы можете попробовать это, но это не будет работать для более сложных представлений.

  --create table
    create table temp (a int not null primary key);


    -- create table log; 
    create materialized view log on temp
    with primary key
    including new values;

    --create view 
    create materialized view temp_mv
    build immediate 
    refresh fast
    on commit
    as
    select * from temp;


    -- populate table 
    insert into  temp select level from dual connect by level <100;

    select * from temp_mv; -- no value 

    commit; -- view is refreshed


    select * from temp_mv; -- all values
Другие вопросы по тегам