本章讨论PostgreSQL中的规则系统。产生规则系统的概念很简单,但是在实际使用的时候会碰到很多细节问题。
某些其它数据库系统定义活动的数据库规则,通常是存储过程和触发器。在PostgreSQL中,这些东西可以通过函数和触发器来实现。
规则系统(更准确地说是查询重写规则系统)与存储过程和触发器完全不同。它把查询修改为需要考虑规则,并且然后把修改过的查询传递给查询规划器进行规划和执行。它非常强大,并且可以被用于许多东西如查询语言过程、视图和版本。这个规则系统的理论基础和能力也在 On Rules, Procedures, Caching and Views in Database Systems 和A Unified Framework for Version Modeling Using Production Rules in a Database System中讨论。