支持的版本:当前 (17) / 16 / 15 / 14 / 13
开发版本:devel
不支持的版本:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1

50.4. PostgreSQL 规则系统 #

PostgreSQL 支持强大的规则系统,用于规范视图和模糊的视图更新。最初,PostgreSQL 规则系统由两个实现组成

  • 第一个使用行级别处理,并在执行器深处实现。 每当访问单个行时,都会调用规则系统。此实现在 1995 年被删除,当时 Berkeley Postgres 项目的最后一个官方版本被转换为 Postgres95

  • 规则系统的第二个实现是一种称为查询重写的技术。重写系统是一个位于解析器阶段规划器/优化器之间的模块。此技术仍然在实现。

查询重写器在第 39 章中进行了一些详细的讨论,因此这里无需赘述。 我们只想指出,重写器的输入和输出都是查询树,也就是说,树的表示或语义细节级别没有任何变化。 重写可以被认为是一种宏扩展的形式。

提交更正

如果您在文档中看到任何不正确的内容,与特定功能的体验不符或需要进一步澄清的内容,请使用此表单报告文档问题。