视图的定义和应用
# 0x1.视图的特点
基于视图的操作:
# 0x2.视图的作用
# 0x3.视图的操作
# 1.建立视图
例子:
注意:不加最后的with check option其中的数据将会随着插入和修改破坏约束条件。
操作过程:
基于多个基表的视图:
分组视图:
不指定属性列:
注意,缺点:修改基表Student的结构后,Student表与F_Student视图的映象关系被破坏,导致该视图不能正确工作。
所以最好还是设置好每个属性的映射。
# 2.删除视图
例子:
# 3.查询视图
查询语句和查询基本表的语句是一样的,具体可看:1.查询语句.md
只不过有时候,视图消解法不能生成正确查询。
如下:
# 4.更新视图
用户的具体使用和基本表一样,dbms会自动将其转换为相应的基本表数据。
但是,因为对于视图的更新数据操作和对基本表的更新是一对一的关系,所以有些情况下的视图更新是不能成功运行的,如下:
而基本上有这样的性质:
- 允许对行列子集视图进行更新
- 对其他类型视图的更新不同系统有不同限制
正常例子: