《数据库》教案及student数据库课件项目7 索引和视图_第1页
《数据库》教案及student数据库课件项目7 索引和视图_第2页
《数据库》教案及student数据库课件项目7 索引和视图_第3页
《数据库》教案及student数据库课件项目7 索引和视图_第4页
《数据库》教案及student数据库课件项目7 索引和视图_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

项目七索引和视图2项目要求

掌握索引和视图的作用。掌握索引和视图的创建方法。掌握索引和视图的管理。3项目准备1.索引索引:是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。表的存储:一个表的存储是由两部分组成的,一部分用来存放数据的数据页面,另一部分存放索引的索引页面。42.索引的作用索引就是加快检索表中数据的方法。通过索引可以迅速地找到表中的数据,而不必扫描整个数据库。索引高效原理通常,索引页面相对于数据页面来说小得多。当进行数据检索时,系统先搜索索引页面,从中找到所需数据的指针,再直接通过指针从数据页面中读取数据。项目准备53.索引的分类SQLServer2000中的索引主要分为聚集索引和非聚集索引。聚集索引:表中数据会根据索引键的顺序重新排列;一个表只能有一个聚集索引。非聚集索引:不影响表中的数据存储顺序;一个表最多可以创建249个非聚集索引。项目准备6项目准备1.视图视图是从一个或多个表中导出的一个虚拟表,其内容由查询定义。视图是虚表,它在存储时只存储视图的定义(即SQL语句),而没有存储对应的数据。(即,视图对应的数据并没有存放在视图中,而是仍然存放在导出视图的表中)。视图只在刚刚打开的一瞬间,通过定义从基本表中搜集数据,并展现给用户。72.视图的作用视图有两个特别重要的作用:方便性:

视图不仅可以简化用户对数据的理解,也可以简化他们的操作。例如,那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。安全性:通过视图用户只能查询和修改他们所能见到的数据,用户被限制在数据的不同子集上。项目准备8项目7.1索引

任务1:创建和删除非聚集索引任务2:创建聚集索引9任务1:创建和删除非聚集索引

提出任务1.在cj表的kcdh列上创建一非聚集索引,索引名为NONCLU_INDEX。并查看创建该非聚集索引后表中数据的排列情况。2.删除刚才创建的非聚集索引FJJ_INDEX。分析任务创建非聚集索引前后,表中的数据的排列次序不会发生变化。10任务1:创建和删除非聚集索引

完成任务测试1:查看创建索引前cj表中数据的排列情况。步骤1:展开【student】数据库,点击【表】对象,在右侧窗体中右击cj表,选择【打开表】|【返回所有行】命令,如图1所示。在弹出的窗口中,显示cj表中的数据,如图2所示。查看完毕后关闭cj表。(注意表中数据排列的规律)

图1图211任务1:创建和删除非聚集索引

完成任务1.

操作步骤:在【企业管理器】窗口,右击cj表,选择【所有任务】|【管理索引】命令,如图所示。12任务1:创建和删除非聚集索引

在弹出的【管理索引】对话框中,选择【新建】按钮。如图所示。13任务1:创建和删除非聚集索引在弹出的【新建索引】对话框中,在【索引名称】文本框输入新建索引名“NONCLU_INDEX”,选中kcdh列前的复选框,如下图所示(【索引选项】不选则默认为非聚集索引)。单击【确定】按钮,回到原来界面,单击【关闭】按钮。14任务1:创建和删除非聚集索引2.操作步骤重复1中的“步骤1”,弹出如图所示窗口,选中已创建成功的索引NONCLU_INDEX,单击【删除】按钮,则删除该索引。单击【关闭】按钮,关闭【管理索引】窗口。15任务2:创建聚集索引

提出任务在cj表的kcdh列上创建一聚集索引,索引名为CLU_INDEX。并查看创建该聚集索引后表中数据的排列情况。分析任务创建聚集索引前后,表中的数据的排列次序会发生变化。16任务2:创建聚集索引

完成任务重复相关步骤,在弹出的【新建索引】对话框中,在【索引名称】文本框输入新建索引名“CLU_INDEX”,选中kcdh列前的复选框,在【索引选项】下选中【聚集索引】复选框,如下图所示。单击【确定】按钮,回到原始界面,单击【关闭】按钮。

17任务2:创建聚集索引再次查看cj表中的数据,会发现此时表中的数据的排列位置并发生变化,如图所示,则说明聚集索引的创建影响表中数据排列的次序。

18项目扩展基本语法——createINDEX语句(创建新索引)createNONCLUSTERED|CLUSTEREDINDEX索引名ON表名|视图名(字段名)基本语法——DROPINDEX语句(删除索引)DROPINDEX表名.索引名|视图名.索引名19项目练习练习7.1:使用T-SQL语句对表cj中kcdh列创建聚集索引。练习7.2:使用企业管理器对cj表中的xh列创建非聚集索引。20项目7.2视图任务1:使用企业管理器创建视图任务2:使用T-SQL命令创建视图任务3:使用企业管理器删除视图任务4:使用T-SQL命令删除视图项目练习21任务1:使用企业管理器创建视图提出任务在对student数据库管理的过程中,经常要做这样的操作:查看每个学生选修的各科的成绩信息。查询结果中要包括学生的学号、姓名、课程名称和各科所对应的成绩。22任务1:使用企业管理器创建视图分析任务方法一:每做一次这样的操作,就书写一次SELECT查询代码。

SELECTxs.xh,xs.xm,kc.kcm,cj.cjFROMxsINNERJOINcjONxs.xh=cj.xhINNERJOINkcONcj.kcdh=kc.kcdh方法二:创建视图用于完成这一查询过程。以后每次做这一操作时,只要调用该视图即可。23任务1:使用企业管理器创建视图完成任务本项目采用方法二来完成项目要求,且使用企业管理器创建视图。打开【企业管理器】窗口,展开【student】数据库,右击【视图】,选择【新建视图】命令。如图所示。24在打开的新建视图对话框有四个区,从上到下分别是【表区】、【列区】、【SQLScript区】和【数据结果区】。在【表区】右击鼠标,选择【添加表】命令。如图所示。

任务1:使用企业管理器创建视图25在弹出的【添加表】对话框中选择【表】选项卡,选择表cj、kc和xs。然后单击【添加】按钮。如果不需要添加其他的表、视图或函数,单击【关闭】按钮。如图所示。任务1:使用企业管理器创建视图26在【列区】选择视图所需的列,指定列的别名、排序方式或准则等。相应的SELECT语句显示在SQLScript区。此项目中,添加“xs.xh”,“xs.xm”,“kc.kcm”和“cj.cj”,如图所示。

任务1:使用企业管理器创建视图27单击工具栏上的保存按钮,在弹出的【另存为】对话框中输入新建视图名(如,xs_view),单击【确定】按钮即可完成了视图的创建,如图所示。任务1:使用企业管理器创建视图28测试1:查看视图xs_view对应的所有数据。步骤1:在【企业管理器】的菜单栏,依次选择【工具】|【SQL查询分析器】,在弹出的【SQL查询分析器】窗口输入语句:“usestudentselect*fromxs_view”并执行该语句,结果如图所示。

任务1:使用企业管理器创建视图29测试2:查看视图xs_view对应的部分数据。步骤1:在【SQL查询分析器】窗口输入语句:“usestudentselectxm,cjfromxs_view”并执行该语句,结果如图所示。

任务1:使用企业管理器创建视图30任务2:使用T-SQL命令创建视图基本语法——createview语句(创建新视图)createview视图名asselect语句31任务2:使用T-SQL命令创建视图提出任务使用T-SQL命令创建视图cjmax_view,用于查看cj表中各门课的最高分。分析任务使用CREATEVIEW语句创建视图cjmax_view32任务2:使用T-SQL命令创建视图完成任务在【查询分析器】中,输入如下命令:USESTUDENTGOCREATEVIEWcjmax_viewASSELECTkcdh,MAX(cj)AS最高分FROMdbo.cjGROUPBYkcdhGO33任务2:使用T-SQL命令创建视图在【企业管理器】窗口,右击右侧窗体,选择【刷新】命令,则在右侧窗体出现创建成功的视图cjmax_view。如图所示。34任务3:使用企业管理器删除视图提出任务使用企业管理器删除操作1中创建的视图xs_view。分析任务

使用企业管理器删除视图很简单,只要找到该视图,选择删除命令即可。35任务3:使用企业管理器删除视图完成任务在【企业管理器】中,展开【student】数据库,单击其中的数据库对象【视图】,在右侧窗体中找到视图xs_view;右击该视图,选择【删除】命令,在弹出的【除去对象】对话框,如图所示,点击【全部除去】按钮。36任务4:使用T-SQL命令删除视图基本语法——DROPview语句(删除视图)DROPview视图名37任务4:使用T-SQL命令删除视图提出任务使用T-SQL命令删除视图cjmax_view。分析任务使用DROPVIEW语句创建视图cjmax_view38任务4:使用T-SQL命令删除视图完成任务在【查询分析器】窗口,输入如下命令:USESTUDENTDROPVIEWcjmax_view执行该命令,则成功删除试图cjmax_view39项目练习

练习7.3:使用企业管理器创建一视图cjmax_view,用于查看cj表中各门课的最高分,结果包括各科的代号和各科最高分。练习7.4:使用createview语句创建一视图xsxx_view,通过该视图仅查看xs表中的xh和xm两列信息。

40项目总结

一个视图是从一个特定的角度来查看数据库中的数据。从数据库系统内部来看,一个视图是由SELECT语句组成的查询定义的虚拟表。从数据库系统内部来看,视图是由一张或多张表中的数据组成的,从数据库系统外部来看,视图就如同一张表一样。索引能提高查询速度,但不合适

温馨提示

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

评论

0/150

提交评论