关系型数据库之视图与规则
2014-05-02 13:29
211 查看
1 视图
视图是由从数据库的基本表中选取出来的数据组成的逻辑窗口,与基本表不同的是,视图是一个虚表。定义视图:
这样,你就可以像查询其他表一样查询视图,但是我们能直接更新视图。
2 规则
规则是对如何修改解析过的查询树的描述。数据库引擎每次运行一条sql,他将语句解析成查询树(一般称为抽象语法树)。树的枝和叶是运算符和值,在执行前,树会被遍历/删减,并以其他方式修改。这棵树可以被规则重写,然后发送到查询规划器(它也以某种方式重写这棵树,以达到优化性能运行效果),最后会把最终的命令发送到执行器。
3 视图 VS 规则
3.1 视图的查询 VS 规则视图也是一种规则,因为他也重写查询树,将对视图的查询转化为对视图中定义的sql的查询。
我们使用EXPLAIN命令来查看holidays视图的执行计划。
它与holidays视图定义的sql的执行计划是一样的。
3.2 更新视图 VS 视图
为了允许更新holidays视图,需要定义一条规则,告诉数据库引擎在UPDATE时做什么操作。规则将捕捉对holidays视图的更新,从NEW与OLD的伪关系取值,并在events上执行更新。NEW看作是包含即将更新的值的表,而OLD则是包含查询的值。
实际上,规则会将对holidays的更新转换为对events的更新。
创建规则:
相关文章推荐
- 什么叫存储过程?视图?关系型数据库产品?
- 关系型数据库ACID规则
- 关系型数据库遵循ACID规则
- Dr. Codd's 对关系型数据库系统的十二条规则
- 数据库的字符集与排序规则、视图、函数、存储过程
- 数据库表、视图、存储过程、函数、字段的命名规则
- 关系型数据库是什么?所遵循的ACID4个规则是哪些?
- 在数据库开发过程中,数据库、表、字段、视图、存储过程等的命名规则
- 数据库表、视图、存储过程、函数、字段的命名规则
- Dr. Codd's 对关系型数据库系统的十二条规则 (其实是13条)
- 在VB.NET中 用代码 利用SQL语句创建数据库、表、存储过程、视图、索引、规则、修改表、查看数据等的方法
- 【连载】关系型数据库是如何工作的?(7) - 数据库架构视图
- 在数据库开发过程中,数据库、表、字段、视图、存储过程等的命名规则
- 关系型数据库完整性规则
- SQL-(2)关系型数据库的特点、完整性规则
- 关系型数据库完整性规则
- 数据库-视图(概念、优点、使用规则和限制、视图和基本表的区别)
- 关系型数据库遵循ACID规则
- 关系型数据库完整性规则
- 关系型与非关系型数据库的优缺点