资源预览内容
第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
第9页 / 共13页
第10页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
视图视图概念由于数据库表是许多用户共同使用的数据资 源,那么不同的用户会从不同角度查看相 同的数据源,这就需要视图。从数据库系 统内部来看,一个视图是由SELECT语句组 成的查询定义的虚拟表,视图是由一张或 者多张表中数据所组成;从数据库外部( 用户角度)来看,视图就如同一张表一样 ,对表能够进行的一般操作都可以应用于 视图,如查询、插入、修改和删除等。在SQL中,用户可以建立4种视图类型:n表中列的子集:包含表中的一个或者多个列,这 是常见视图类型。n表中行的子集:一个视图只包含所需要的数据行 。n两个或多张表的连接:通过表的连接建立的视图 。n聚集信息:可以创建具有聚集函数的视图,可以 简化统计操作。例如,建立一个视图,包含每一 个院系的最高奖学金、最低奖学金、平均奖学金 以及奖学金总金额等。管理视图一、使用创建视图向导 例如:建立信息学院信息管理专业的视图, 要求有学号、姓名、性别和出生日期。 具体操作看演示: 使用运行向导来完成。 二、使用企业管理器管理视图 例如:删除刚刚建立名称为“信息学院管理专 业视图”的视图。看演示。 例如:建立关于男同学的视图“学校男生”, 要求输出学号、姓名、出生日期和院系名 称。 具体操作看演示。 三、使用SQL语句创建视图 CREATE VIEW 视图名 , AS 子查询 WITH CHECK OPTION 注意:子查询可以是任意复杂的SELECT语句 ,但通常不允许含有ORDER BY子句和 DISTINCT短语。WITH CHECK OPTION表示对视图进行UPDATE、 INSERT和DELETE操作时要保证 更新、插入或删 除的行满足视图定义的谓词条件(即子查询中的 条件表达式)。 例如:建立信息学院学生视图。 CREATE VIEW 学生_视图 AS SELECT 学号,姓名,性别 FROM 学生基本表 WHERE 院系名称=信息学院 WITH CHECK OPTION 注意:由于加上了“WITH CHECK OPTION”子句,以 后对该视图进行的插入、修改和删除操作时,都 会自动加上“院系名称=信息学院”的条件。例如:建立信息学院选修“C003”课程的学生 视图。 CREATE VIEW 课程_视图 as SELECT 学生基本表.学号,平时成绩*0.2+考 试成绩*0.8 as 总成绩 FROM 学生基本表,成绩表 WHERE 院系名称=信息学院 AND 学生基本 表.学号=成绩表.学号 and 成绩表.课程号 =c003例如:建立信息学院选修“C003”课程的总成 绩在90分以上的学生视图。 CREATE VIEW 成绩_视图 as SELECT 学生基本表.学号,平时成绩*0.2+考 试成绩*0.8 as 总成绩 FROM 学生基本表,成绩表 WHERE 院系名称=信息学院 AND 学生基本 表.学号=成绩表.学号 and 成绩表.课程号 =c003 and (平时成绩*0.2+考试成绩 *0.8)90修改视图ALTER VIEW 视图名列名1,列名2, AS 子查询 例如:修改“学生_视图”,增加性别列。 ALTER VIEW 学生_视图 AS SELECT 学号,姓名,性别 FROM 学生基本表 WHERE 院系名称=信息学院删除视图语法格式: DROP VIEW 例如:删除“课程_视图” DROP VIEW 课程_视图更新视图是指通过视图来插入、删除和修改数据。由 于视图不是实际存储数据的表,因此对视 图的更新最终要转换为基本表的更新。 例如:向“学生_视图”中插入一个新生记录。 INSERT INTO 学生_视图 VALUES(x208,张三,男)视图的作用n视图能简化用户操作。视图机制可以使用户将注 意力集中在关心的数据上,如果这些数据不是直 接来自基本表,则可以通过创建视图,使用户眼 中的数据库结构简单、清晰,并且可以简化用户 的数据查询操作。n视图可使用户从多角度看待同一数据。视图机制 能使不同的用户以不同的方式看待同一数据,当 许多不同种类的用户使用同一个数据库时,这种 灵活性是非常重要的。n增加数据的安全性。有了视图机制,就可以在设 计数据库应用系统时,对不同的用户定义不同的 视图,使机密数据不出现在不应看到这些数据的 用户视图上,这样具有视图的机制自动提供了对 数据的安全保护功能。n提高应用程序发逻辑独立性。如果应用程序始终 是通过视图来存取数据,而不是直接通过表,那 么一旦与视图关联的基本表发生更改,视图可以 从重新组织数据输出到应用程序中,而不需要对 应用程序本身做任何改变,所以表的更改不影响 用户的使用。
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号