Chapter 38. 规则系统
Table of Contents
- 38.1. 查询树
- 38.2. 视图和规则系统
- 38.2.1.
SELECT
规则如何运转 - 38.2.2. 非
SELECT
语句的视图规则 - 38.2.3. PostgreSQL里视图的强大能力
- 38.2.4. 更新一个视图
- 38.2.1.
- 38.3. 物化视图
- 38.4. 在
INSERT
,UPDATE
, 和DELETE
上的规则- 38.4.1. 更新规则是如何运转的
- 38.4.2. 与视图合作
- 38.5. 规则和权限
- 38.6. 规则和命令状态
- 38.7. 规则与触发器的比较
本章讨论PostgreSQL里的规则系统。 生产规则系统的概念是很简单的,但是在实际使用的时候会碰到很多细节问题。
有些其它数据库系统定义动态的数据库规则。这些通常是存储过程和触发器, 在PostgreSQL里,这些东西也可以通过函数和触发器来实现。
规则系统(更准确地说是查询重写规则系统)是和存储过程和触发器完全不同的东西。 它把查询修改为需要考虑规则的形式,然后把修改过的查询传递给查询规划器执行。 这是非常有效的工具并且可以用于许多像查询语言过程、视图、版本等。 这个规则系统的理论基础和能力在 数据库系统中的规则,过程,缓存和视图 和数据库系统中为版本模型使用生产规则的统一框架里有讨论。