视图的应用课案.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
视图的应用课案

计算机科学与技术系 实 验 报 告 一、实验目的与要求 1.2.. 实验内容 1.create view v as select 教师编号,姓名 from 管理.教师 create view v_order as select * from 管理.教师 where 职称 = 教授 图2定义教授视图 基于单个表按选择和投影操作定义视图。 定义v_cuss视图,选择教师编号,姓名,职称这三列,并且职称为教授 create view v_cuss as select 教师编号, 姓名, 职称 from 管理.教师 where 职称 = 教授 图3基于选择和投影操作定义视图 基于多个表根据连接操作定义视图。 定义v_join视图,包含教师编号,职称,课程编号,课程名称,来源于教师表和课程表的连接,通过教师编号和责任教师进行连接 create view v_join as select 教师编号, 职称,课程编号,课程名称 from 管理.教师 join 管理.课程 on 教师.教师编号 = 课程.责任教师 图4基于多个表建立连接视图 基于多个表根据嵌套操作定义视图。 创建v_item视图,通过教师表和课程表的嵌套,视图中选择的是教的课程是公共基础的教师的全部信息。 create view v_item as select * from 管理.教师 where 教师编号 in ( select 责任教师 from 管理.课程 where 课程性质=公共基础) 图5基于多个表嵌套定义视图 定义含有虚字段的视图。 添加的虚字段是年工资。 create view v_sal(教师编号, 姓名, 月工资,年工资) as select 教师编号,姓名,工资,工资*12 from 管理.教师 图6定义含有虚字段的视图 分别在定义的视图设计一些查询(包括基于视图和基本表的连接或嵌套查询)。 2.1查询v-cuss视图 select * from v_cuss 图7v_cuss视图查询结果 2.2v_cuss视图和v_item视图的连接查询: select v_cuss.教师编号, v_cuss.姓名, 专业 from v_cuss join v_item on v_cuss.教师编号 = v_item.教师编号 2.3v_order 视图和v_join视图进行嵌套查询: 通过教师编号进行嵌套查询,查询职称为教授的教师的教师编号,姓名,工资和院系。 select v_order.教师编号, v_order.姓名, v_order.工资, v_order.院系 from v_order where v_order.教师编号 in( select v_join.教师编号 from v_join where 职称=教授 ) insert into v_join values(1011,助教,101,高数) 图9 插入失败图 insert into v values(1011,朱老师) 图10 视图成功插入图 3.2更新操作: 更新v_join视图中教师编号为1003的职称。 update v_join set 职称=教授 where 教师编号=1003 图11 更新之前的v_join视图 图12 更新之后的v_join视图 3.3删除操作: 删除v_join视图中教师编号为1003的元祖,但是这个视图涉及多个基本表,然而删除的操作就是在对于基本表进行操作。 delete from v_join where 教师编号=1003 图13 无法进行删除操作 实验分析与小结: 四、其它 1.视图的含义和作用是什么?它与基本表的区别是什么? 从用户角度来看,一个视图是从一个特定的角度来查看数据库中的数据。从数据库系统内部来看,一个视图是由SELECT语句组成的查询定义的虚拟表。从数据库系统内部来看,视图是由一张或多张表中的数据组成的,从数据库系统外部来看,视图就如同一张表一样,对表能够进行的一般操作都可以应用于视图,例如查询,插入,修改,删除操作等。视图与基本表的区别如下: 1视图是已经编译好的语句而表不是 2) 视图没有实际的物理记录。而表有。 3) 表是内容,视图是窗口 4) 表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时四对它进行修改,但视图只能有创建的语句来修改 5) 表是内模式,试图是外模式 6) 视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL语句的集合。从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。 7) 表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。 8) 视图的建立和删除只影响视图本身,不影响对应的基本表 得分(百分制)

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档