第6章 视图与索引

第6章 视图与索引

ID:20012997

大小:412.50 KB

页数:22页

时间:2018-10-09

第6章  视图与索引_第1页
第6章  视图与索引_第2页
第6章  视图与索引_第3页
第6章  视图与索引_第4页
第6章  视图与索引_第5页
资源描述:

《第6章 视图与索引》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第六章视图与索引6.1视图6.2索引6.1视图1、视图概念视图是从一个或者多个表(或视图)中导出的虚表。视图也是一种安全机制,可以限制用户对数据的访问范围。表与视图的区别:相同点:表与视图都是关系表,都可以做查询和更新操作。不同点:表中数据可以永久性存储,而视图中只存储定义不存数据,是一个逻辑表。对视图可以进行查询操作,但更新数据时要受到限制。因为被更新的是视图对应的基表中的数据。2、创建视图(1)在SSMS中创建视图操作步骤如下:在“对象资源管理器”中展开“数据库”→选择数据库“PXSCJ”→选择“视图”项→

2、快捷菜单:新建视图(2)使用CREATEVIEW语句创建视图语法格式:CREATEVIEW视图名[(列名[,...n])]ASselect语句[WITHCHECKOPTION]其中:WITHCHECKOPTION指在视图上的修改要符合select中的限定条件。【例6.1】创建CS_XS视图,包括计算机专业各学生的信息。CREATEVIEWCS_XSASSELECT*FROMXSBWHERE专业='计算机'【例6.2】创建CS_KC视图,包括计算机专业各学生的学号、其选修的课程号及成绩。要保证对该视图的修改紧限计

3、算机专业这个条件。CREATEVIEWCS_KCASSELECTXSB.学号,课程号,成绩FROMXSB,CJBWHEREXSB.学号=CJB.学号AND专业='计算机'WITHCHECKOPTION【例6.3】创建视图CS_KC_AVG,其中包括计算机专业学生的平均成绩(score_avg)和学号(num)。CREATEVIEWCS_KC_AVG(num,score_avg)ASSELECT学号,AVG(成绩)FROMCJBGROUPBY学号3、查询视图【例6.4】查找平均成绩在80分以上的学生的学号和平均成

4、绩。(对XS_KC_AVG视图进行查询)SELECT*FROMXS_KC_AVGWHEREscore_avg>=804、更新视图可更新的视图有:创建视图的SELECT语句中没有聚合函数,且没有TOP、GROUPBY、UNION子句及DISTINCT关键字。创建视图的SELECT语句中不包含从基本表列通过计算所得的列。创建视图的SELECT语句的FROM子句中至少要包含一个基本表。在视图中插入记录【例6.5】向CS_XS视图中插入以下一条记录:('081115','刘明仪',1,'1998-3-2','计算机',

5、50,NULL)CS_XS视图依赖于一个基表XSB。INSERTINTOCS_XSVALUES('081115','刘明仪',1,'1998-3-2','计算机',50,NULL)SELECT*FROMCS_XSSELECT*FROMXSB注:在CS_XS视图和与其相关的基表XSB中,都多了一条记录。当视图所依赖的基本表有多个时,不能向该视图插入数据,因为这将会影响多个基表。(2)在视图中修改数据【例6.6】将CS_XS视图中所有学生的总学分增加8。(CS_XS依赖于一个基本表:XSB)UPDATECS_XSS

6、ET总学分=总学分+8注:该语句实际上是将CS_XS视图所依赖的基本表XSB中所有专业为“计算机”的记录的总学分字段值在原来基础上增加8。【例6.7】将CS_KC视图中学号为081101的学生的101课程成绩改为90。(CS_KC依赖于两个基本表:XSB和CJB)UPDATECS_KCSET成绩=90WHERE学号='081101'AND课程号='101‘注:视图CS_KC依赖于两个基本表:XSB和CJB,对CS_KC视图的一次修改只能改变学号(源于XSB表)或者课程号和成绩(源于CJB表)。以下的修改是错误的

7、:UPDATECS_KCSET学号='081120',课程号='208'WHERE成绩=90(3)在视图中删除数据【例6.8】删除CS_XS中女同学的记录。(实际删除了计算机系的女生记录)DELETEFROMCS_XSWHERE性别=0(4)修改视图定义【例6.9】将CS_XS视图修改为只包含计算机专业学生的学号、姓名和总学分。ALTERVIEWCS_XSASSELECT学号,姓名,总学分FROMXSBWHERE专业='计算机'5、删除视图(1)通过SSMS删除视图操作步骤:展开“数据库”→“视图”→选择需要删

8、除的视图→快捷菜单:“删除”菜单项(2)T-SQL命令方式删除视图语法格式:DROPVIEW视图名[...,n]使用DROPVIEW可删除一个或多个视图。【例6.10】删除CS_XS和CS_KC视图DROPVIEWCS_XS,CS_KC6.2索引1、索引概念将表中一列或多列定义为索引键,按照一定顺序建立的由键值与记录的对应关系表为索引表。索引表由用户创建,又系统维护。索引的作用:快速存

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。