首页 > 数据库技术 > 详细

数据库视图功能的使用

时间:2019-10-27 17:32:21      阅读:88      评论:0      收藏:0      [点我收藏+]

数据库视图功能的使用

创建视图的格式:

create view <view name> as
select <attributes name>
from <table name>
where<requirments>

为什么要使用视图:

  1. 简化了操作,把经常使用的数据定义为视图。
  2. 安全性,用户只能查询和修改能看到的数据。
  3. 逻辑上的独立性,屏蔽了真实表的结构带来的影响。

视图中的内容会随着表项自动更新。

视图也是可以插入和删除的,但是注意对视图的插入和删除从理论上来说就可能有问题:

技术分享图片

而各种数据库对这个问题也有对应的处理方案:

视图能否修改数据?

单个表的视图是可以的,就像普通表一样。
多个表的视图是不可以的,需要触发器。

另外,即使是单表也有限制:

来源:http://1035054540-qq-com.iteye.com/blog/1499430

如果视图包含下述结构中的任何一种,那么它就是不可更新的:
(1)聚合函数;
(2)DISTINCT关键字;
(3)GROUP BY子句;
(4)ORDER BY子句;
(5)HAVING子句;
(6)UNION运算符;
(7)位于选择列表中的子查询;
(8)FROM子句中包含多个表;
(9)SELECT语句中引用了不可更新视图;
(10)WHERE子句中的子查询,引用FROM子句中的表;
(11)ALGORITHM 选项指定为TEMPTABLE(使用临时表总会使视图成为不可更新的)。

另外,如果原表中attribute有not null限制也不一定可以更新,如果not null的那个attribute没有包括在视图中就不能更新了,因为通过视图更新的话不存在的项是会设置为null的。

技术分享图片

数据库视图功能的使用

原文:https://www.cnblogs.com/jiading/p/11747814.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!