创建视图的格式:

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的。

数据库视图功能的使用

相关文章:

  • 2021-12-07
  • 2021-10-25
  • 2021-11-16
  • 2022-01-21
  • 2021-05-30
  • 2021-11-27
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-06-29
  • 2022-02-01
  • 2021-06-30
  • 2021-12-10
  • 2021-12-12
相关资源
相似解决方案