视图的作用:
- 视图能够简化用户的操作
- 视图使用户能以多种角度看待同一数据
- 视图对重构数据库提供了一定程度的逻辑
- 视图能够对机密数据提供安全保护
- 适当的利用视图可以清新表达查询
**视图的特点:
- 虚表,从一(多)表(或视图)导出
- 只存放视图的定义,不存放视图对应的数据
- 基表中的数据发生变化,从视图中查询出的数据随之改变
一、建立视图**
create view <视图名> [(<列名>,<列名>....)]
as <子查询>
[with check option]
with check option:
- 对视图进行update,insert,delect操作时要满足视图定义中的谓词(即子查询中的条件表达式)
- 子查询可以是任意的select语句,是否可以distinct和order by则决定具体系统的实现。
组成视图的属性列名:全部省略或全部指定
- 全部省略:
由子查询中select目标列中的诸字段组成
- 明确指定视图的所有列名
1、某个目标列是聚集函数或列表达式
2、多表连接时选出了几个同名列作为视图的字段
3、需要在视图中为某个列启用新的更合适的名字
涉及的表:
student(sno,sname,sage,ssex,sdept)、primary key(sno)
sc(sno