预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

视图视图概念在SQL中,用户可以建立4种视图类型: 表中列的子集:包含表中的一个或者多个列,这是常见视图类型。 表中行的子集:一个视图只包含所需要的数据行。 两个或多张表的连接:通过表的连接建立的视图。 聚集信息:可以创建具有聚集函数的视图,可以简化统计操作。例如,建立一个视图,包含每一个院系的最高奖学金、最低奖学金、平均奖学金以及奖学金总金额等。管理视图看演示。 例如:建立关于男同学的视图“学校男生”,要求输出学号、姓名、出生日期和院系名称。 具体操作看演示。 三、使用SQL语句创建视图 CREATEVIEW视图名[<列名>[,<列名>]] AS子查询[WITHCHECKOPTION] 注意:子查询可以是任意复杂的SELECT语句,但通常不允许含有 ORDERBY子句和DISTINCT短语。 [WITHCHECKOPTION]表示对视图进行UPDATE、INSERT和DELETE操作时要保证更新、插入或删除的行满足视图定义的谓词条件(即子查询中的条件表达式)。 例如:建立信息学院学生视图。 CREATEVIEW学生_视图 AS SELECT学号,姓名,性别 FROM学生基本表 WHERE院系名称=‘信息学院’ WITHCHECKOPTION 注意:由于加上了“WITHCHECKOPTION”子句,以后对该视图进行的插入、修改和删除操作时,都会自动加上“院系名称=‘信息学院’”的条件。 例如:建立信息学院选修“C003”课程的学生视图。 CREATEVIEW课程_视图 as SELECT学生基本表.学号,平时成绩*0.2+考试成绩*0.8as总成绩 FROM学生基本表,成绩表 WHERE院系名称='信息学院'AND学生基本表.学号=成绩表.学号and成绩表.课程号='c003'例如:建立信息学院选修“C003”课程的总成绩在90分以上的学生视图。 CREATEVIEW成绩_视图 as SELECT学生基本表.学号,平时成绩*0.2+考试成绩*0.8as总成绩 FROM学生基本表,成绩表 WHERE院系名称='信息学院'AND学生基本表.学号=成绩表.学号and成绩表.课程号='c003'and(平时成绩*0.2+考试成绩*0.8)>90修改视图删除视图更新视图视图的作用增加数据的安全性。有了视图机制,就可以在设计数据库应用系统时,对不同的用户定义不同的视图,使机密数据不出现在不应看到这些数据的用户视图上,这样具有视图的机制自动提供了对数据的安全保护功能。 提高应用程序发逻辑独立性。如果应用程序始终是通过视图来存取数据,而不是直接通过表,那么一旦与视图关联的基本表发生更改,视图可以从重新组织数据输出到应用程序中,而不需要对应用程序本身做任何改变,所以表的更改不影响用户的使用。