PgSQL——使用触发器自动刷新物化视图

简介: PgSQL——使用触发器自动刷新物化视图

前言

普通视图就是一个虚拟表,不占内存。而物化视图是存在的,占内存。

物化视图,默认是手动刷新。下面是手动刷新的例子。我们来创建一个物化视图。

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

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


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 row 
execute procedure tri_refresh_ydpf_func();


其它:删除触发器

drop trigger IF EXISTS tri_refresh_ydpf ON tyzk_point_report;
相关文章
|
4月前
|
存储 关系型数据库 MySQL
MySQL触发器 ,视图索引 , 事务
MySQL触发器 ,视图索引 , 事务
|
存储 关系型数据库 MySQL
使用MySQL视图与触发器
使用MySQL视图与触发器。
59 4
|
存储 SQL 监控
Mysql视图和触发器
Mysql视图和触发器
Mysql视图和触发器
|
存储 关系型数据库 MySQL
mysql 存储过程、触发器、视图、事件
mysql 存储过程、触发器、视图、事件
119 0
|
SQL 关系型数据库 MySQL
7、Mysql视图和触发器
视图 视图是一个虚拟表(非真实存在),其本质是【根据SQL语句获取动态的数据集,并为其命名】,用户使用时只需使用【名称】即可获取结果集,并可以将其当作表来使用。
1148 0
SQL物化视图 自动更新 定时刷新
SQL物化视图 自动更新 定时刷新http://www.bieryun.com/3483.html 创建定时刷新-------------------------------------------------------------- create  MATERIALIZED VIEW LOG.
2548 0
|
存储 关系型数据库 MySQL
|
SQL 关系型数据库 数据库