数据库系统及应用4.ppt

数据库系统及应用4

* 第五节:视图 视图Is_student的定义为: Create view is_student as Select * from student where 系=“信息” 此例转换后的查询语句为: Select * from student where 系=“信息” and 性别=“男” 对视图进行查询时,并非所有的视图都能进行正确的转换。 一般而言,大多数RDBMS都能对行列子集视图的查进行正确的转换。 * 第五节:视图 不能进行正确转换的视图查询的示例 1、定义一个反映学生平均成绩的视图 Create view pjcj(学号,平均成绩) as Select 学号,avg(成绩) from sc group by 学号 2、查询平均成绩在90分以上的学生学号和平均成绩 Select * from pjcj where 平均成绩=90 3、视图消解后的查询 Select 学号,avg(成绩) from sc where avg(成绩)=90 group by 学号 错误原因:where子句中不能使用集函数。 解决办法:对基本表进行直接查询。 * 第五节:视图 四、更新视图 更新视图,最终将转化为对基本表的更新。 为了防止用户通过视图对基本表进行任意的修改,在定义视图时,应加上with check option子句。 并不是所有视图都可以更新,一般行列子集视图是可更新的。不同

文档评论(0)

1亿VIP精品文档

相关文档