1、,第7章 创建视图(p105),掌握内容:创建视图修改视图删除视图,操作方法:企业管理器SQL命令,例1:查看学生的成绩,显示他们的学号、姓名、课程名称、成绩。例2:查找成绩优秀(成绩=90)的学生,显示他们的学号、姓名、课程名称、成绩。例3:查找姓张的同学,显示他们的姓名,课程名称和成绩。例4:查找学SQL Server课程的同学,显示他们的学号,课程名称和成绩。例5:查找学号最后一位为2的学生的学号,成绩。,引入视图概念:,分析,查看学生成绩,显示他们的学号、姓名、课程名称、成绩。,成绩学生基本情况表,学生基本情况表,成绩,课程,查询结果来自三个表中。,视图可让我们一次查看多个表中的数据创
2、建视图后,可像使用表一样对视图进行查询,简化了数据的操作。视图称为虚表:视图并不存储数据,视图中的数据实际上是表中的数据,对视图进行查询还是要到表中去取数据。在视图中对数据进行修改其实修改的仍是表中的数据。有利于数据导出,修改视图所使用的表中的数据,视图中的数据会随之发生变化吗?,视图并不存储数据,视图中的数据实际上是对表格内数据的引用。创建视图后数据记录还是存放在表中,对视图进行查询还是要到表中去取数据。所以修改表中的数据,引用该表中数据的视图中的数据也会随之发生更新。也就是说视图中保存的不是数据,而是查询命令。,问题:,视图就是执行查询语句后所得到的查询结果,但这个查询结果可保存起来像使用
3、表一样的使用。所以视图又称为虚表。视图一般包括的内容: 1 、视图可以是表的其中一部份。2、视图可以是对多个表进行联合查询的结果。3、视图可以是对多个表进行连接查询的结果。4、视图可以是对多个表进行复杂计算的结果。5、视图可以从另一个视图得到数据。6、视图可以从视图和表的混合中得到数据。,一、概述,二、优点:,最重要一点:简化数据操作。 可将经常要使用的查询定义为视图,这样用户下一次要操作时只要直接使用视图进行查询即可。 视图其实就像是个过滤器,对于一个或多个表中的数据进行筛选和引用。,三、企业管理器创建视图,步骤:展开要使用的数据库“视图” 右击新建视图包含4部分:关系图窗格、网格窗格、SQ
4、L窗格、结果窗格。右击“关系图窗格”添加表在关系图窗格中选择相应的列。(打勾)在网格窗格中设置是否输出和准则。(最难)是否输出该列是否显示在查询结果中。“准则“输入条件运行并保存。,例题详解,例2:查找成绩优秀(成绩=90)的学生,显示他们的学号、姓名、课程名称、成绩。若例1中创建的视图名为“成绩信息”。select *from 成绩信息where 成绩=90,例2,例1、学生基本情况(学号,姓名,性别,家庭收入) 成绩(学号,课程号,成绩) 课程(课程号,课程名称,学分)创建视图,显示每个学生的学号、姓名、课程名称、成绩。,例3:查找姓张的同学,显示他们的姓名,课程名称和成绩。select
5、姓名,课程名称,成绩from 成绩信息where 姓名 like张%,例3,例4:查找学SQL Server课程的同学,显示他们的学号,课程名称和成绩。select 学号,课程名称,成绩from 成绩信息where 课程名称=SQLServer,例4,例5,例5:查找学号最后一位为2的学生的学号,成绩。select 学号,成绩from 成绩信息where 学号 like%2,1、创建视图,显示每个学生的学号,姓名,课程,分数四列(要改变列名)。 只是改变了输出时的列标题,表中的列名没有改变。,练习,2、显示姓名中包含“小”字的学生的姓名,课程,分数。,3、创建视图,查询学生的基本情况,显示学生的学号、姓名、性别、出生日期、民族、政治面貌、系名、班级名。4、创建视图,查询年龄小于21岁的学生的学号、姓名、班级名。(根据视图创建视图)5、创建一个视图,显示各系的身高最大值、身高最小值、平均身高、身高总和。(分组统计)6、显示各同学的姓名、性别、年龄。,4,5,图,6,7、创建视图,显示各系各班的人数,最终结果如图所示。,视图设计部分:,练习:,8、创建一个查询,输出如下的查询结果。,9、创建查询,显示如下所示的查询结果。,四、修改视图及记录,视图中记录的操作就等于对表中记录的操作在视图中的记录操作会保存到相应表中。,使用企业管理器。,五、删除视图,