您的位置:首页 > 其它

pg中的视图

2016-03-07 14:54 281 查看
与oracle不同,pg可以创建临时视图

create temp view vw_class as select * from pg_class;

创建完后,在别的会话中是无法查看该视图的,这个会话退出后,这个视图的定义也被清除掉了

可更新视图

create table test as select * from pg_class;

select * from v_test;

create view v_test as select * from test;

需要创建规则来使视图可更新

create or replace rule r_test as on update to v_test do instead update test set  relname=new.relname where relnamespace=new.relnamespace;

同理插入,删除都需要创建规则

删除

create rule vm_del as on delete to vw_test do instead delete from test where id=old.id;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: