Как сделать автоматическое обновление материализованных представлений
Я хочу автоматически обновлять материализованное представление после вставки данных в таблицы при создании материализованного представления.
Я попробовал следующий код (полное обновление начните с создания материализованного представления, которое обновляется каждые 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