postgres中是否有其他选择可以将视图编译为oracle?我进行了搜索,但找不到任何相关的替代方法。有人可以建议吗?
ALTER VIEW employee COMPILE;
在Oracle中
答案 0 :(得分:1)
在PostgreSQL视图中不必编译。
这是Oracle特有的麻烦。 Oracle不能确保视图的依存关系保持完整,因此可能由于视图的其中一项条件已更改或消失而使视图变为无效。
Oracle调用这样的视图 invalid ,并调用确保所有必要条件都存在的过程 compile 。
在PostgreSQL中,数据库管理系统将阻止您以可能破坏视图的方式更改视图的要求,因此视图永远不会变为无效。因此,无需检查其有效性。
这很方便,但是如果要修改基础表,就必须付出代价,必须删除并重新创建视图。