《SQLServer2005数据库案例教程》第6章索引和视图

《SQLServer2005数据库案例教程》第6章索引和视图

第6章索引和视图如果对一个未建立索引的表执行查询操作,将逐行扫描表数据页面的数据行sqlserver 建立索引,并从中挑选出符合条件的数据行。当一个表有很多行时,可以想象用这种方式执行一次查询操作所花费的时间是多么漫长。然而,在建立索引后,则可以根据索引指示,直接定位到所要查找的数据行,从而加快了的数据检索操作。视图是查看数据表中的数据的一种方法。当一些拥护需要经常访问和查询数据表中的某些字段构成的数据,但数据库管理员从安全角度考虑又不希望他们直接接触数据时,可以利用视图这一数据对象。视图犹如数据表的窗户,管理员定义这些窗户的位置后,用户就只能查看他可以看到的数据。6.1索引

索引是除了表之外的另外一类非常重要的、存储数据的数据对象。经常要对数据进行查询操作,查询速度就成了数据库性能的一个重要指标,索引就是实现数据快速查询的数据对象。6.1.1实现过程创建索引有两种方式,使用管理平台创建索引,

或者使用-SQL语言创建索引。以教学管理系统中

的成绩表为例,创建以成绩为索引项的索引。1

.在管理平台中,依次展开【数据库】|【教学管理系统】|【表】|【成绩表】|【索引】,在【索引】项上右击,出现弹出式的快捷菜单,如图6.1所示

图6.1新建索引的快捷菜单2.从弹出的快捷菜单中选择【新建索引】选项,出现如图6.2所示的新建索引对话框。在数据库名称栏中输入“成绩索引”。图6.2新建索引对话框3.单击【添加】按纽,弹出选择列的对话框,选择成绩字段,如图6.3所示。

图6.3选择列对话框4.单击【确定】按纽,返回到新建索引对话框,如图6.4所示。图6.4新建索引对话框5.单击【确定】按纽完成索引的建立,在对象资源管理器中将出现“成绩索引”项,如图6.5所示。

图6.5完成成绩索引的建立6.1.2索引的相关知识点1.聚集索引

又称为聚簇索引。聚集索引中索引存储的值的顺序和表中的数据的物理存储结构是完全一致的。建立索引时,系统对表的物理数据页中的数据按列进行排序,然后再重新存储到磁盘上sqlserver 建立索引,即聚集索引与数据是混为一体的,它的叶节点中的存储的是实际的数据。聚集索引的特点如下:(1)表的数据按照索引的数据顺序排列。(2)每个数据表只能建立一个聚集索引,并且会在第一个建立《SQLServer2005数据库案例教程》第6章索引和视图,往往会在主码所在的列或者最常查询的列上建立聚集索引。(3)索引将占用用户数据库的空间。(4)适合范围查询。(5)建立聚集索引后,更新索引列数据,往往会导致表中物理记录的存储顺序变化,维护的代价会比较大,对于需要经常更新的列,不宜建立聚集索引。2.非聚集索引

非聚集索引存储的数据顺序一般和表的物理数据的存储不同。尽管查询速度慢一些《SQLServer2005数据库案例教程》第6章索引和视图,但维护的代价小。而且表中最多可以建立249个非聚集索引以满足多种查询的需要。

3.惟一索引

惟一索引是指索引存储的值必须是惟一的,不允许两行具有相同的索引值(包括NULL)。

4.复合索引

复合索引是指利用表中的多个列值的组合来构建索引值。规定复合索引最多使用16个列的值进行组合,而且这些列必须在同一张表中。

5.使用-SQL语言创建索引

-SQL语言使用命令来创建索引6.索引的删除

1)利用管理平台删除数据库

在管理平台中,右击要删除的索引,从弹出的快捷菜单中选择【删除】选项,如图6.6所示。图6.6删除索引系统弹出删除对象对话框,如图6.7所示,单击【确认】即可删除索引。图6.7删除对象对话框2)利用Drop语句删除索引

-SQL语言使用DROP

index命令来删除索引,并且一次可以删除多个索引。6.2视图

视图不是数据表,它仅仅是一些SQL查询语句的集合,作用是按照不同的要求从数据表中提取不同的数据。对于普通的数据库用户来说,视图似乎是一个真实的表,它具有一组命名的数据列和行。但是,与真实的表不同,在视图中没有存储任何数据,仅仅是一种较简单的访问数据库里其他表中数据的方式,因此又称为虚表。而数据仍然存储在表中,这些表称为视图的基表。一个视图可以派生于一个或者多个基表,也可以从其他视图中派生。6.2.1创建视图(1)在管理平台中,依次展开【数据库】|【教学管理系统】|【视图】,在【视图】项上右击,出现弹出式的快捷菜单,如图6.8所示。

图6.8新建视图(2)在弹出的菜单中单击【新建视图】选项,弹出视图页面中的【添加表】选项卡,如图6.9所示。图6.9视图窗口3.在视图窗口相应的表中选择要在视图中显示的字段,如图6.11所示。

图6.11选择字段4.最后单击菜单栏中【文件】|【保存视图】,弹出保存视图对话框,输入视图名称“学生成绩查询”,如图6.12所示。

图6.12保存视图(5)单击【确定】按纽,在左侧的对象资源管理器中将出现【学生成绩查询】,如图6.13所示。同样,我们也可以使用-SQL语言中的来完成【学生成绩查询】视图的建立,其脚本如下:学生成绩查询学生表.专业,学生表.学号,学生表.姓名,课程表.课程名,成绩表.成绩FROM成绩表课程表ON成绩表.课程编号=课程表.课程编号

学生表ON成绩表.学号=学生表.学号图6.13【学生成绩查询】视图6.2.2视图的应用(1)在对象资源管理器中依次展开【数据库】|【教学管理系统】|【视图】,右击【学生成绩查询】项,弹出右键菜单,如图6.14所示。图6.14【学生成绩查询】视图(2)单击打开视图,如图6.15所示,这样就可以很直观的浏览学生成绩。图6.15通过视图浏览学生成绩可以看到,视图的有如下优点:(1)可以使视图集中数据、简化和定制不同用户对数据库的不同要求。(2)使用视图可以屏蔽数据的复杂性sqlserver 建立索引,用户不必了解数据库的结构,就可以方便地访问和管理数据,简化数据权限管理。(3)视图可以使用户只关心他感兴趣的某些特定数据和他们所负责的特定任务,而那些不需要的或者无用的数据则不在视图中显示。(4)视图提供了简单而有效的安全机制。

公告:
1. 本站所有资源来源于用户上传和网络,如有侵权请联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长处理!
6. 本站不售卖代码,资源标价只是站长收集整理的辛苦费!如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
7. 站长QQ号码 2205675299

资源库 - 资源分享下载网 » 《SQLServer2005数据库案例教程》第6章索引和视图

常见问题FAQ

关于资源售价和售后服务的说明?
本站所有资源的标价均为本站收集资源的辛苦费,不代表资源本身的价值。软件是高智慧高价值的商品,不可能是白菜价。本站资源标价只是赞助费用,收取的赞助费仅用来维持本站的日常运营!毕竟收集整理资料需要投入云计算资源和站长大量的精力。
代码有没有售后服务和技术支持?
由于代码的运行具有不可预见性,本站不保证代码完整可运行,不提供技术支持和售后服务。 本站原创代码都是站长自己开发的,可以有偿提供技术支持服务。 网站里标明【亲测】的代码都是站长亲测过的,其他的代码由于精力有限,没有一一测试,不能保证代码就一定能够使用,更没有技术支持服务,下载前请自行斟酌。
有没有搭建服务?
由于搭建服务比较费时费力,所以本站除了原创代码外均不提供搭建服务。本站分享代码纯属兴趣爱好,不以盈利为目的,请勿咨询有没有搭建服务,谢谢理解。
链接地址失效了怎么办?
请带上资源链接地址联系客服,工作时间内我们看到后将第一时间回复。
关于解压密码
本站资源一般都没有加密,如果发现需要解压密码的,那么就输入 hao.35dc.com 试试。

发表评论

资源库,由老程序员细心甄别、精心筛选,只为提供优质的源码资源

关于我们 联系我们