作者: 由 Jan Wieck 写作.Tom Lane 为 7.1 做了更新.
生产规则系统的概念是很简单的,但是在实际使用的时候会碰到很多细微的问题. 这些问题的一部分和 PostgreSQL规则系统的理论基础可以在 有关数据库系统的规则,过程,缓存和视图 里找到.
有些数据库系统定义动态的数据库规则.这些通常是存储过程和触发器, 在 PostgreSQL 里是通过函数和触发器来实现的.
"查询重写规则系统"(从现在开始称之为 "规则系统") 是和存储过程和触发器完全不同的东西. 它把查询修改为需要考虑规则的形式, 然后把修改过的查询传递给查询优化器执行. 这是非常有效的工具并且可以用于许多象查询语言过程, 视图,和版本等.规则系统的能力在 [A Unified Framework for Version Modeling Using Production Rules in a Database System] 和 [有关数据库系统的规则,过程,缓存和视图]里有讨论.