实验6数据库视图定义报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验6数据库视图定义报告

实验六: 数据库视图的定义及使用 学号: 姓名: 实验六:数据库视图的定义及使用 实验目的: 掌握视图的用法,加深对视图作用的理解。 实验内容: 1、创建、修改和删除视图。 2、利用视图进行查询。 实验步骤: 说明:对视图的创建、修改和删除均可在可视化界面下操作。 在SQL Server企业管理器中,依次选择数据库――XSGL――视图――鼠标右击――新建视图。然后通过单击按钮或右击鼠标第一格的空白区域,选择弹出菜单中的“添加表”。然后拖拽主键到外键,建立关联,点击字段左边的方框选择输出字段。 图6-1 仅以命令方式来操作: 一、 视图的创建: 1.创建信息系学生信息的视图: create view IS_view as select * from student where sdept = IS 2. 创建信息系选修了1号课程的学生的视图: create view stu_view as select student.* from sc join student on sc.sno = student.sno where sdept = IS and cno = 1 3. 建立信息系选修了1号课程且成绩在90分以上的学生的视图: create view stu2_view as select student.* from sc join student on sc.sno = student.sno where sdept = IS and cno = 1 and grade 90 4. 创建一个反映学生出生年份的视图: create view bir_view as select sno, year(getdate()) - sage as birthday from student 5. 将所有女生的记录定义为一个视图: create view girl_view as select * from student where ssex = 女 create view avg_view as select sno, avg(grade) as grade from sc group by sno 二、 视图结构的修改: 6. 将视图F_student修改为信息系的所有女士的视图 alter view F_student as select * from student where sdept = IS and ssex = 女select * from IS_view where sage 20 8. 查询信息系选修了1号课程的学生: select * from stu_view 9. 在视图S_G中查询平均成绩在90分以上的学生的学号和平均成绩: select sno, grade from S_G where grade 90 四、更新视图: 10.将信息系学生视图IS_Student中学号为”95002”的学生姓名改为”刘辰”: update IS_Student set sname=刘辰 where sno=95002 比较: update IS_Student set sname=’刘辰’ where sno=’95003’ 此语句不能实现数据的更新. (为什么呢? 因为在视图中并没有”95003”这条记录) 11. 向信息系学生视图IS_Student中插入一个新的学生记录, 学号为95029,姓名为”赵新”, 年龄为20岁: insert into IS_Student values(95029, 赵新,20) (因为主表中其它属性字段可以为空,因此此操作能成功。) 12. 删除信息系学生视图IS_Student中学号为95004的学生的记录: delete from IS_Student where sno = 95004 五、删除视图: 13. 删除视图IS_S1: drop view IS_S1 思考: 创建所有学生的基本信息和选课信息的视图 create view stu_info as select * from student left join sc on sc.sno = student.sno 2.基于上述视图查询各系学生各门功课的平均成绩. select sdept, cno, avg(grade) from stu_info group by sdept, cno order by sdept desc 实验小结: 创建视图的select语句必须为所有的列指定列名,并且列名字段不能重复; 若视图是基于多个表使用联接操作而导出的,那么对这个视图执行更新操作 时,每次只能影响其中的一个表。 若视图导出时包含有分组和聚合操作,则不允许

文档评论(0)

aicencen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档