- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 7 章 索引与数据完整性 7.1 索 引 数据库中索引类似于书籍中的目录。 7.1.1 索引的分类 SQL Server索引分为聚集、非聚集和惟一索引三种类型。 1.聚集 聚集索引是指数据行的物理存储顺序与索引顺序完全相同。每个表只能包括一个聚集索引,但是聚集索引可以包含多个列,此时称为复合索引。虽然聚集索引可以包含多个列,但是最多不能超过16个。 只有当表包含聚集索引时,表内的数据行才按一定的排列顺序存储。如果表没有聚集索引,则其数据行按堆集方式存储。 2.非聚集 非聚集索引具有完全独立于数据行的结构,索引不改变表中数据行的物理存储顺序。非聚集索引的最低行包含非聚集索引的键值,并且每个键值项都有指针指向包含该键值的数据行。数据行不按基于非聚集键的次序存储。 3.惟一索引 惟一索引可以确保所有数据行中任意两行的被索引列不包括NULL在内的重复值。如果是复合惟一索引,则此索引可以确保索引列中每个组合都是惟一的。因为惟一索引中不能出现重复的值,索引列中的数据必须是惟一的。 7.1.2 索引的创建 1.使用CREATE INDEX创建聚集索引 首先打开查询分析器。下面介绍CREATE INDEX语句的用法。 (1)创建索引的完整语法 CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name ON { table | view } ( column [ ASC | DESC ] [ ,…n ] ) } (2)参数说明 ① UNIQUE:为表或视图创建惟一索引(不允许存在索引值相同的两行)。视图上的聚集索引必须是UNIQUE索引。 ② CLUSTERED:创建一个对象,其中行的物理排序与索引排序相同,并且聚集索引的最低一级包含实际的数据行。一个表或视图只允许同时有一个聚集索引。 ③ NONCLUSTERED:创建一个指定表的逻辑排序的对象。对于非聚集索引,行的物理排序独立于索引排序。每个索引行均包含非聚集键值和一个或指向包含该值的行。如果表没有聚集索引,行定位器就是行的磁盘地址。如果表有聚集索引,行定位器就是该行的聚集索引键。 ④ index_name:是索引名。索引名在表或视图中必须惟一,但在数据库中不必惟一。索引名必须遵循标识符规则。 ⑤ table:包含要创建索引的列的表。可以选择指定数据库和表所有者。 ⑥ view:要建立索引的视图的名称。 ⑦ column:应用索引的列。指定两个或多个列名,可为指定列的组合值创建组合索引。在table后的圆括号中列出组合索引中要包括的列。 ⑧ [ASC | DESC]:确定具体某个索引列的升序或降序排序方向。默认设置为ASC。 【例7-1】对STUDENT数据库中的学生表按学号建立一个聚集索引。 Create clustered index student_xh on dbo.student_info(student_ID) 补例 按姓名创建一个非聚集索引 Create index student_姓名 on dbo.student_info(student_Name) 2.使用企业管理器来创建索引 (1)单击“开始→所有程序→Microsoft SQL Server→企业管理器”命令,打开企业管 理器。 (2)在SQL Server Enterprise Manager中,展开服务器,接着展开数据库,单击Student数据库。 (3)在展开的内容中单击表,在右边展开的内容中选择要建立索引的表student_info。 (4)单击鼠标右键,选择“所有任务→管理索引”,系统将会弹出如图7-2所示的对话框。 (5)由图7-2中可以看到,在student_info表中已经存在一个聚集索引。此时,我们要在企业管理器中建立一个新的索引。单击“新建”按钮,弹出“新建索引”对话框,在“索引名称”文本框中输入索引名“index_姓名”,如图7-3所示。 (6)然后选择建立索引的字段并设置索引的一些属性。单击“student_Name”复选框,然后单击“确定”按钮,则可以看到索引已经建立成功了,如图7-4所示。在图7-4中已经存在两个索引了,一个是已经建立的聚集索引,另一个则是刚刚建立的非聚集索引。 3.使用企业管理器中的向导建立索引 (1)单击“开始→所有程序→Microsoft SQL Server→企业管理器”命令,打开企业管 理器。 (2)在企业管理器中选择菜单“工具”中的“向导”项。 (3)在弹出的窗口中双击数据库,出现如图7-5所示的对
您可能关注的文档
最近下载
- 光催化与光催化体系全册配套课件.pptx VIP
- 吉祥物设计课件 2024——2025学年人教版(2024)初中美术七年级上册.pptx VIP
- GeoQ智图成都2025年商圈蓝皮书.pdf
- 新版IATF16949全套质量管理程序文件.docx VIP
- 天然产物化学全套黄酮类化合物的提取与分离课件.ppt VIP
- 沪发改投(2012)130号文.docx VIP
- 顺丰员工手册.pdf VIP
- 分级护理制度试题.docx VIP
- 2023被动式超低能耗建严寒和寒冷地区居住建筑.docx VIP
- 2026北京市总工会职工大学(北京市工会干部学院)“优培计划”招聘应届优秀大学毕业生笔试模拟试题及答案解析.docx VIP
文档评论(0)