如何在Postgres中编译视图

时间:2018-09-27 13:24:23

标签: postgresql migration postgresql-9.3 postgresql-9.4 postgresql-9.5

postgres中是否有其他选择可以将视图编译为oracle?我进行了搜索,但找不到任何相关的替代方法。有人可以建议吗?

ALTER VIEW employee COMPILE;在Oracle中

1 个答案:

答案 0 :(得分:1)

在PostgreSQL视图中不必编译。

这是Oracle特有的麻烦。 Oracle不能确保视图的依存关系保持完整,因此可能由于视图的其中一项条件已更改或消失而使视图变为无效。

Oracle调用这样的视图 invalid ,并调用确保所有必要条件都存在的过程 compile

在PostgreSQL中,数据库管理系统将阻止您以可能破坏视图的方式更改视图的要求,因此视图永远不会变为无效。因此,无需检查其有效性。

这很方便,但是如果要修改基础表,就必须付出代价,必须删除并重新创建视图。