使用SQL语句创建视图.ppt_第1页
使用SQL语句创建视图.ppt_第2页
使用SQL语句创建视图.ppt_第3页
使用SQL语句创建视图.ppt_第4页
使用SQL语句创建视图.ppt_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第4课视图,什么是视图?基表:独立存在的表视图虚拟表。SQL仅存储视图的定义。视图的唱片、视图的概念、视图是从一个或多个表或视图导出的表,其结构和数据基于对表的查询。与实际表格一样,视观表包含多个定义的资料栏和多个资料列,但本质上这些资料栏和资料列是衍生自参考的表格。视图概述和视图的作用使用户可以仅关注感兴趣的数据,提高数据安全性以提高客户端查询效率。创建视图时,请记住只能在当前数据库中创建视图。删除视图所参考的基本表格或视图后,在创建新的基本表格或视图之前,该视图将不再可用。如果视图中的列与函数、数学表达式、常量或多个表中的列同名,则必须定义列名。不能在视图中创建索引视图的名称必须符合标识符

2、的规则,并且对于每个用户必须是唯一的。此外,牙齿名称不能与用户拥有的表相同。应用视图,视图是基表的行的子集问题创建XK数据库视图v_Student,仅显示Student表中类编码为2000001的类的学生信息方法1:使用企业号管理器方法2:使用SQL语句方法3:使用创建视图向导,创建视图,SQL语句为use xk go create view v _ student with encryption as select * from student where Class no=200001 go,练习,创建视图v _ Class表仅显示部门编码为01的部门的类信息显示多表查询(实际上,只需在正

3、确的select语句之前添加CREATE VIEWAS即可)、创建视图、添加表和选择要输出的行、练习、创建视图v_CouByCpt、电脑应用程序工程部门负责的选择课程信息(课程名称、讲座老师和上课时间)use xk go create view v _ couby CPT as select couname,teacher,schooltime,depart name Department where course . depart no=depart no注:如果视图中的列是算术表达式、函数或常量多表连接,则两列或更多列具有相同的列名。教科书P51是否可以使用图2-2-26中的查询结果作为视

4、图创建视图Use xk go create view v _ couby kind as select kind as课程分类,sum(willnum) as登记合计from course group by kind 显示视图信息,显示视图信息显示视图的定义信息sp_helptext显示视图的参考对象和字段信息Sp _ help text v _ couby CPT go Sp _ depends v _ couby CPT go,修改视图,格式:alt加密视图WITH ENCRYPTION,修改视图,use xk go alterview V _ coubycpt as select cou

5、name,teacher,schooltime,departname from courseDROP VIEW view_name还可以同时删除多个视图。示例:删除尝试v_coubycpt和v_stucou。Drop view v_coubycpt、v_stucou、更新视图、INSERT作业UPDATE作业DELETE作业注意:视图更新作业最终将转换为在基础表更新作业中使用WITH CHECK OPTION,因为视图实际上不保存记录在视图中修改数据时,不能同时修改多个基表。您可以基于多个基表或视图修改视图,但每次修改只能影响一个基表。不能修改通过计算计算计算的字段。如果在创建视图时指定了WI

6、TH CHECK OPTION选项,则在使用视图修改数据库信息时,必须确保修改的数据符合视图定义的范围。UPDATE,运行DELETE命令时,删除和更新的数据必须包含在视图的结果集中。如果视图参考多个表格,则无法使用DELETE指令删除资料。更新视图,并使用视图添加新的唱片示例。首先,将基于表格特征创建新视图v_teacher。create view v _ teacher as select teacher no,teachername,departno,salary from teacher where salary 3000 go insert into v _02) go,更新视图,U

7、se xk go alter view v _ teacher as select id,teachername,salary,depart no from teacher where salary 3000但是,要删除记录,必须指定视图中定义的字段。示例:使用视图v_teacher从表teacher中删除名为Wang Jingxi的记录。delete from v _ teacher where name=Wang Jingxi,练习,创建视图v_StuSQL,显示00电子商务类,然后选择SQL Server实用程序学生信息(学编号,名称)。练习,use xk go create view

8、v _ Stu SQL as select student . stuno,stuname,classno from student,class,course,Stu course.如果可以在牙齿视图中插入新行(00000061,linsby,20000001),则可以插入。注意:现有student表没有学号000061牙齿。思考:将视图定义更改为:use xk go alter view v _ Stu SQL as select student . stuno、stuname、student.classno from student、com Stu cou where student.stuno.With check option go,思考,问题:1。可以在牙齿视图中插入以下唱片行吗?(00000062

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论