前言

普通视图就是一个虚拟表,不占​​内存​​。而物化视图是存在的,占内存。
物化视图,默认是手动刷新。下面是手动刷新的例子。我们来创建一个物化视图。

实体化视图创建之后,我们希望在表数据变动的时候自动刷新视图。

可以使用下面的步骤实现:

Step1 创建函数刷新视图

create or replace function tri_refresh_ydpf_func() returns trigger as $$ 
declare
begin
refresh materialized view mv_ydsjpf with data;
refresh materialized view mv_ydejpf with data;
refresh materialized view mv_ydyjpf with data;
refresh materialized view mv_ydzpf with data;
return null;
end;
$$ language plpgsql;

Step2 创建触发器

create trigger tri_refresh_ydpf
after insert or update or delete on tyzk_point_report
for each statement
execute procedure tri_refresh_ydpf_func();