索引及其应用讲解

合集下载

索引的用途

索引的用途

索引的用途01加快数据的查询速度索引加快了数据的查询速度,通过索引可以快速定位需要的数据,而不需要扫描整个表。

索引还可以提高检索性能,但是过多或不当的索引也会导致系统低效。

过多或不当的索引甚至会导致索引碎片。

02加速两个表之间的连接加速两个表之间的连接是针对外键的一种方法,通过在表之间创建索引来实现。

这样可以加快表之间连接的速度,特别是在实现数据的参考完整性方面有意义。

03排序索引的作用是帮助我们快速地排序。

当查询语句需要排序时,我们可以使用索引来存储查询结果,然后通过排序算法进行处理,最后将结果返回给客户端。

索引的使用可以大大减少存储空间和提高查询效率。

04优化数据库性能索引可以优化数据库性能,快速定位和访问数据,提高数据库的响应速度和并发能力。

通过索引,可以避免频繁的磁盘读写和网络传输,提高数据库的响应速度和并发能力。

05快速地寻找那些具有特定值的记录索引是用来快速地寻找那些具有特定值的记录的,MySQL索引都以B-树的形式保存。

全文索引主要用于快速定位特定数据,而全文索引主要针对MyISAM类型的数据表。

06提高系统的性能索引的作用是提高系统的性能。

通过使用索引,可以在查询的过程中使用优化隐藏器,从而提高系统的性能。

此外,索引还可以有效地提高系统性能。

07可以快速的查询数据库中的特定信息索引可以快速查询数据库中的特定信息,通过建立索引可以快速访问数据库中的表数据。

索引的主要作用是加快对表中记录的查找或排序,通过设置索引可以方便地查找到特定信息。

08提高数据的完整性和安全性索引可以提高数据的完整性和安全性,通过限制数据的重复性和唯一性,保证数据的完整性。

同时,索引也可以实现数据的安全性,通过限制用户的访问权限,保护数据的安全性。

09鉴别功能鉴别功能是文献鉴别,通过对文献中用词的解剖可以发现作者的特有气质和语言习惯,通过索引可以利用这种规律,从而辨析文献的真伪。

10改善SQL语句SQL语句在SQL SERVER中用于执行各种操作和查询,改善SQL语句就是通过优化SQL语句来实现这一目的。

索引ppt课件.ppt

索引ppt课件.ppt

索引的优缺点

优点
加快访问速度
加强行的唯一性

缺点
带索引的表在数据库中需要更多的存储空间 操纵数据的命令需要更长的处理时间,因为它
们需要对索引进行更新
创建索引的指导原则

请按照下列标准选择建立索引的列。
该列用于频繁搜索
该列用于对数据进行排序

请不要使用下面的列创建索引:
列中仅包含几个不同的值。 表中仅包含几行。为小型表创建索引不太划
填充因子

创建索引时,可以指定一个填充因子,以便在索引的每个 叶级页上留出额外的间隙和保留一定百分比的空间,供将 来表的数据存储容量进行扩充和减少页拆分的可能性。填 充因子的值是从 0 到 100 的百分比数值,指定在创 建索引后对数据页的填充比例。值为 100 时表示页将 填满,所留出的存储空间量最小。只有当不会对数据进行 更改时(例如,在只读表中)才会使用此设置。值越小则 数据页上的空闲空间越大,这样可以减少在索引增长过程 中对数据页进行拆分的需要,但需要更多的存储空间。当 表中数据会发生更改时,这种设唯一索引不允许两行具有相同的索引 值 主键索引:为表定义一个主键将自动创建主键索 引,主键索引是唯一索引的特殊类型。主键索引 要求主键中的每个值是唯一的,并且不能为空 聚集索引(Clustered):表中各行的物理顺序与键 值的逻辑(索引)顺序相同,每个表只能有一个 非聚集索引(Non-clustered):非聚集索引指定表 的逻辑顺序。数据存储在一个位置,索引存储在 另一个位置,索引中包含指向数据存储位置的指 针。可以有多个,小于249个
索引
什么是索引

汉语字典中的汉字按页存放,一般都有汉语拼音目 录(索引)、偏旁部首目录等 我们可以根据拼音或偏旁部首,快速查找某个字词

索引的作用和使用场景

索引的作用和使用场景

索引的作用和使用场景
索引是一种数据库对象,用于加速数据的检索速度。

它通过创建数据值的排序列表,并提供指向存储在表的指定列中的数据值的指针,使数据库能够更快地找到所需的数据。

索引的作用和使用场景如下:
1.提高查询速度:索引的最主要作用是提高查询速度。

通过使
用索引,数据库系统可以快速定位到表中的数据,避免全表
扫描,从而大大提高查询效率。

2.实现数据的唯一性约束:索引可以保证数据的唯一性,通过
在唯一性索引列上查询数据,可以确保查询结果中的数据是
唯一的。

3.加速表和表之间的连接操作:在连接操作中,如果连接条件
使用的列上有索引,那么索引可以加速表的连接速度。

4.优化排序和分组操作:索引可以用于优化排序和分组操作。

通过使用索引,数据库系统可以更快地找到需要排序或分组
的记录。

5.使用场景:索引通常用于优化那些需要快速检索的数据查询,
特别是对于大型数据表来说,索引的重要性更加明显。

在选
择使用索引的列时,通常选择那些在查询中经常用作过滤条
件和排序条件的列。

同时,需要注意的是,索引虽然可以提
高查询速度,但也会占用额外的存储空间,并且在插入、更
新或删除数据时可能会导致性能下降,因为索引本身也需要
被更新。

因此,在实际应用中,需要根据实际情况权衡使用
索引的利弊。

总之,索引是数据库中重要的对象之一,它可以提高数据的查询速度,并用于实现数据的唯一性约束和加速表与表之间的连接操作等。

在实际应用中,需要根据实际情况选择使用索引的列和场景,以获得最佳的性能和效果。

索引的用法和原理

索引的用法和原理

索引的用法和原理索引是一个重要的数据结构,常用于加快对数据的检索和搜索,包括文本搜索和数据库检索。

本文将介绍索引的用法和原理。

一、索引的定义索引是一个数据结构,它存储了数据的某些属性的值和对应的物理位置或指针。

通过索引可以更快速地访问数据,因为索引可以减少需要检索的数据量。

二、索引的作用1. 快速查找索引可以加速数据的查找和搜索,减少了查询时扫描全部数据的时间和资源消耗。

2. 提高更新速度索引可以有效地减少更新数据时需要的扫描数量,从而提高更新的速度。

3. 减少磁盘I/O次数索引可以减少访问磁盘的次数,降低磁盘I/O的消耗。

三、索引的类型1. B+树索引B+树索引是一种常见的索引类型,它是一棵平衡的树结构,具有时间复杂度为log(n)的查询和插入操作。

2. 哈希索引哈希索引是一种将键映射到散列表中的索引类型。

它具有常数时间的查询和插入操作,但不支持范围查询和排序。

索引一般采用B+树等树结构的数据结构,具有快速查找和排序的优势。

B+树的叶子节点存储实际的数据记录,而非叶子节点只存储记录的指针或物理地址。

这样可以减少磁盘I/O 的数量,提高索引的性能。

索引的维护是一种动态操作,包括索引的创建,更新和删除。

当数据变化时,需要对索引进行相应的调整,以保持索引的正确性和高效性。

3. 索引的优化为了提高索引的性能和效率,需要对索引进行优化。

可以通过使用覆盖索引减少需要的I/O次数,对于经常扫描的数据可以使用位图索引等。

五、索引的注意事项1. 索引过多会影响性能索引过多会影响写入性能,并且增加了索引维护的成本。

2. 索引的最佳实践在设计索引时,应根据数据的访问模式和查询需求调整索引的属性和数量。

对于经常使用的查询,可以采用复合索引等技术提高查询效率。

在使用索引时,应选择适当的索引类型和数据结构。

哈希索引适用于等值查询,而B+树索引适用于范围查询和排序。

总结:索引是一种重要的数据结构,可以加速数据的查询和搜索。

数据库原理及应用.索引

数据库原理及应用.索引

一、创建索引CREATE INDEX 语句用于在表中创建索引。

CREATE [ UNIQUE ] INDEX index ON tablename (field [ASC|DESC][, field [ASC|DESC], ...]) [WITH { PRIMARY | DISALLOW NULL | IGNORE NULL }]索引分为聚簇索引和非聚簇索引。

1.聚簇索引聚簇索引也叫簇类索引, 是一种对磁盘上实际数据重新组织以按指定的一个 或多个列的值排序。

由于聚簇索引的索引页面指针指向数据页面,所以使用聚簇 索引查找数据几乎总是比使用非聚簇索引快。

每张表只能建一个聚簇索引,并且 建聚簇索引需要至少相当该表 120%的附加空间,以存放该表的副本和索引中间 页。

聚簇索引确定表中数据的物理顺序。

聚簇索引类似于电话簿,后者按姓氏排 列数据。

由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一 个聚集索引。

但该索引可以包含多个列(组合索引),就像电话簿按姓氏和名字 进行组织一样。

汉语字典也是聚簇索引的典型应用,在汉语字典里,索引项是字 母+声调,字典正文也是按照先字母再声调的顺序排列。

聚簇索引对于那些经常要搜索范围值的列特别有效。

使用聚簇索引找到包含 第一个值的行后,便可以确保包含后续索引值的行在物理相邻。

例如,如果应用 程序执行的一个查询经常检索某一日期范围内的记录, 则使用聚集索引可以迅速 找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。

这样 有助于提高此类查询的性能。

同样,如果对从表中检索的数据进行排序时经常要 用到某一列,则可以将该表在该列上聚簇(物理排序),避免每次查询该列时都 进行排序,从而节省成本。

建立聚簇索引的思想1、大多数表都应该有聚簇索引或使用分区来降低对表尾页的竞争,在一个高事 务的环境中,对最后一页的封锁严重影响系统的吞吐量。

2、在聚簇索引下,数据在物理上按顺序排在数据页上,重复值也排在一起,因 而在那些包含范围检查(between、<、<=、&gt;、>=)或使用 group by 或 orderby 的查询时,一旦找到具有范围中第一个键值的行,具有后续索引值的行保证物理上毗连在 一起而不必进一步搜索,避免了大范围扫描,可以大大提高查询速度。

简述索引在数据库中的功能和作用

简述索引在数据库中的功能和作用

索引在数据库中的功能和作用一、索引的定义索引是数据库管理系统中用于提高数据检索速度的一种数据结构。

它类似于书的目录,可以帮助用户快速找到需要的信息。

在数据库中,索引可以加快数据的检索速度,提高查询效率。

二、索引的作用1. 提高数据检索速度数据库中的数据量往往非常庞大,如果没有索引,每次进行数据检索都需要进行全表扫描,这样的查询效率非常低下。

而通过使用索引,可以大大缩短数据检索的时间,提高查询效率。

2. 加速数据的排序在数据库中,经常需要对数据进行排序操作,如果没有索引,排序操作的性能会受到很大的影响。

通过使用索引,可以加快数据的排序速度,提高排序操作的效率。

3. 提高数据的唯一性和完整性在数据库中,索引可以帮助保证数据的唯一性和完整性。

通过在索引字段上创建唯一性约束,可以确保表中的数据不会出现重复的情况,保证数据的完整性。

4. 减少系统的磁盘I/O在数据库查询过程中,如果没有索引,数据库会进行全表扫描,这样会产生大量的磁盘I/O操作。

而通过使用索引,可以大大减少数据库的磁盘I/O操作,降低系统的负载。

5. 提高数据库的并发性能数据库中的索引可以帮助提高数据库的并发性能。

通过使用索引,可以减少数据的锁定时间,提高数据的并发访问能力,提高数据库的并发性能。

三、常见的索引类型1. B-Tree索引B-Tree索引是最常见的索引类型,它适用于等值查询和范围查询。

通过B-Tree索引,可以快速地定位到需要的数据记录。

2. 哈希索引哈希索引适用于等值查询,它使用哈希算法将索引键转换为哈希值,并将哈希值映射到实际的数据记录。

3. 全文索引全文索引适用于全文搜索,它可以帮助用户快速找到包含特定关键词的文本内容。

4. 空间索引空间索引适用于地理信息系统等特定领域,它可以帮助用户快速地进行地理位置检索。

四、创建索引的注意事项1. 考虑查询的频率在创建索引时,需要考虑查询的频率。

如果一个字段经常用于查询操作,可以考虑为该字段创建索引,提高查询效率。

索引通俗理解

索引通俗理解

索引通俗理解标题:索引的作用和使用方法引言:在日常生活中,我们经常会遇到需要查找信息的场景,而索引作为一种常见的数据结构,能够帮助我们快速定位和获取所需信息。

本文将介绍索引的作用和使用方法,帮助读者更好地理解和利用索引。

一、什么是索引索引是一种数据结构,用于快速查找和访问数据。

它类似于书籍中的目录,通过记录关键词和对应的位置信息,使得我们能够快速定位到所需的内容。

二、索引的作用1. 提高查询效率:索引存储了数据的关键信息和位置,能够大大减少数据的扫描和比对时间,从而提高查询效率。

2. 优化数据库性能:通过合理地创建和使用索引,可以减少数据库的I/O操作和CPU消耗,从而提升整体性能。

3. 加速数据更新:索引的存在使得数据的更新更加高效,减少了对整个表的遍历,只需更新索引即可。

三、索引的种类1. B树索引:是一种广泛使用的索引结构,适用于范围查找和精确查找。

它具有平衡性和多层次的特点,能够快速定位到目标数据。

2. 哈希索引:通过将数据映射到哈希表中,实现快速的查找。

适用于等值查询,但不支持范围查询。

3. 全文索引:用于对文本内容进行检索,能够根据关键词匹配进行模糊查询。

4. 空间索引:用于存储和查询具有空间属性的数据,如地理位置信息。

四、索引的创建和使用方法1. 创建索引:在数据库表中,可以通过CREATE INDEX语句来创建索引,指定要创建索引的列和索引的类型。

2. 使用索引:在查询语句中,可以通过使用WHERE子句和索引列进行条件查询,利用索引加速查询过程。

3. 索引的优化:为了更好地利用索引,可以对查询条件进行优化,避免使用不必要的函数和运算符,提高查询效率。

五、索引的注意事项1. 索引并非越多越好:索引的创建会占用额外的存储空间,并增加数据的维护成本,因此需要权衡索引的数量和性能优化之间的关系。

2. 更新成本较高:索引的存在会增加数据的更新成本,因为每次更新数据时都需要更新索引。

因此,在频繁更新的表上,需要谨慎选择和使用索引。

索引的作用和分类

索引的作用和分类

索引的作用和分类一、索引的作用索引是信息检索系统中的一种重要工具,它可以帮助用户快速定位和查找所需信息。

索引的作用主要体现在以下几个方面:1. 提高检索效率:索引可以对文档进行关键词的提取和整理,构建一个方便查找的索引表。

用户在进行信息检索时,只需要在索引表中查找关键词,就可以快速定位到相关文档,大大提高了检索效率。

2. 精确定位信息:索引通过对文档内容进行分析和整理,可以将关键信息提取出来,并按照一定的规则进行分类和排序。

用户可以根据索引进行精确的定位,找到所需的具体信息。

3. 实现多维度检索:索引可以根据不同的分类标准,将文档进行多维度的分类和索引。

用户可以通过不同的索引表,从不同的角度对信息进行检索,提高了信息检索的灵活性和准确性。

4. 优化系统性能:索引可以将数据进行结构化的存储和管理,减少了系统的存储空间和访问时间。

通过索引的优化,可以提高系统的性能和响应速度,提升用户的使用体验。

二、索引的分类索引按照不同的分类标准,可以分为以下几种类型:1. 字典索引:字典索引是按照字母顺序对关键词进行排序和分类的索引方式。

它可以通过字母表的顺序,快速定位到相关关键词,并找到对应的文档信息。

2. 主题索引:主题索引是按照文档的主题进行分类和索引的方式。

它将文档按照不同的主题进行分类,用户可以通过主题索引表,找到与自己主题相关的文档信息。

3. 时间索引:时间索引是按照文档的时间顺序进行分类和索引的方式。

它可以将文档按照时间先后进行排序,用户可以通过时间索引表,找到自己感兴趣的时间段内的文档信息。

4. 地理索引:地理索引是按照地理位置进行分类和索引的方式。

它可以将文档按照地理位置进行标注和分类,用户可以通过地理索引表,找到特定地理位置的文档信息。

5. 关键词索引:关键词索引是按照文档中的关键词进行分类和索引的方式。

它可以将文档中的关键词进行提取和整理,用户可以通过关键词索引表,找到包含特定关键词的文档信息。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第6索引及其应用章、教学目标通过本章学习,使学生掌握索引的基本概念、分类和作用,掌握索引的建立和操作方法,掌握索引的维护方法,会根据实际问题的需要,能够熟练地建立表和视图的相关索引。

索引的概念、分类和作用索引的建立和操作方法索引视图的建立与应用6.1 任务描述本章完成项目的第6 个任务:在大学生选课管理数据库Student 中,完成如下操作:1.为课程信息表创建一个非聚集复合索引。

2.为教师教课信息表创建一个聚集复合索引。

3.为学生选课信息表创建一个唯一、聚集复合索引。

6.2 索引综述数据库中的索引可以快速找到表或索引视图中的特定信息。

索引包含从表或视图中一个或多个列生成的键,以及映射到指定数据的存储位置的指针。

通过创建、设计良好的索引以支持查询,可以显著提高数据库查询和用应程序的性能。

索引可以减少为返回查询结果集而必须读取的数据量。

索引还可以强制表中的行具有唯一性,从而确保表数据的数据完整性。

1•索引的概念数据库中的索引与书籍中的索引(目录)类似,在一本书中,利用索引可以快速查找所需信息,无须阅读整本书。

在数据库中,索引使数据库程序无须对整个表进行扫描,就可以在其中找到所需数据。

书中的索引是一个词语列表,其中注明了包含各个词的页码。

而数据库中的索引是某个表中一列或者若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。

也可以这么说,数据库中某个表的索引是指,将这个表中数据行按照某一列或者若干列值的组合(称为索引键)的大小,只排列各个数据行的顺序,而不改变数据行的存储位置,得到的一个非结构数据文件。

2 •索引的作用通过创建唯一索引,可以保证数据记录的唯一性。

通过创建和使用索引可以大大加快数据检索的速度。

通过创建和使用索引可以加速表与表之间的连接,这一点在实现数据的参照完整性方面有特别的意义。

通过创建和使用索引使得在使用ORDER B湘GROUP BY子句中进行检索数据时,可以显著减少查询中分组和排序的时间。

通过索引可以在检索数据的过程中使用优化隐藏器,提高系统性能。

3.索引类型表或视图可以包含以下类型的索引。

(1)聚集索引聚集索引是指表中数据行的物理存储顺序与索引列顺序完全相同。

聚集索引是根据数据行的键值在表或视图中排序而存储这些数据行。

索引定义中包含聚集索引列。

每个表只能有一个聚集索引,因为数据行本身只能按一个顺序方式排序。

只有当表包含聚集索引时,表中的数据行才按排序顺序存储。

如果表没有聚集索引,则其数据行存储在一个称为堆的无序结构中。

(2)非聚集索引非聚集索引不改变表中数据行的物理存储位置,数据与索引分开存储,通过索引带有的指针与表中的数据发生联系。

非聚集索引具有独立于数据行的结构。

非聚集索引包含非聚集索引键值,并且每个键值项都是指向包含该键值的数据行的指针。

一个表或视图可含有多个非聚集索引。

聚集索引和非聚集索引都可以是唯一的。

这意味着任何两行都不能有相同的索引键值。

另外,索引也可以不是唯一的,即多行可以共享同一个索引键值。

每当修改了数据表内容后,都会自动维护表或视图的索引。

(3)唯一索引唯一索引确保索引键不包含重复的值,因此,表或视图中的每一行在某种程度上是唯一的。

(4)包含性列索引是一种非聚集索引,它扩展后不仅包含键列,还包含非键列。

(5)索引视图视图的索引将具体化(执行)视图,并将结果集永久存储在唯一的聚集索引中,而且存储方法与带聚集索引的表的存储方法相同。

创建聚集索引后,可以为视图添加非聚集索引。

6.3 创建索引使用索引要付出一定的空间和时间的代价,因此为表建立索引时,要根据实际情况,认真考虑哪些列应该索引,哪些列不应该索引。

建立索引一般要遵循以下几条原则:主键列上一定要建立索引;外键列上可以建立索引;在经常查询的字段上最好建立索引; 对于查询中很少涉及的列、重复值比较多的列不要建立索引; 对于定义为text 、image 和bit 数据类型的列上不要建立索引;SQL Server 2008在创建主键约束或唯一约束时,自动创建唯一索引,以强制实 施PRIMARY KEY 和UNIQUE 约束的唯一性要求。

如果需要创建不依赖于约束的索引, 可以使用 SQL Server Management Studio或者使用 SQL 命令创建索引。

建立索引时要注意以下几点:只有表或视图的所有者才有权建立索引。

在建立聚集索引时,将会对表进行复制,对表中的数据进行排序,然后删除原 始的表。

因此,数据库上必须有足够的空间,以容纳数据复本。

在使用CREATENDEX 命令建立索引时,必须指定索引名称、表名称及索引所应 用的各列名称(即索引键)。

在一个表中最多可建立 249个非聚集索引。

默认情况下,建立的索引是非聚集 索引。

复合索引的列的最大数目为16,各列组合的最大长度为 900字节。

6.3.1 使用 SQL Server Management Studio 创建索引1.启动 SQL Server Management Studio ,并连接到 SQL Server 2008中的数据库,在“对象资源管理器”窗口中展开“数据库”节点,再展开建立索引的表所属的数 据库名(比如Student ),再展开其“表”节点,展开要建立索引的表名(比如Stab ),右击其“索引”节点,出现弹出菜单,如图 6-1所示。

图6-1新建索引2 .执行弹出菜单中的【新建索引】命令,系统则出现“新建索引”对话框,如 图6-2所示。

R t&ervierTempDB Bfit田口数据库关系匡1 曰丄哀+ LJ 果城震 EV dtxi.Stab冈.二列一L 键3 釣克 ±1 —送0(- S 」堀计1 _ J dbo.Ttab Vdba.CtabE田 E 口 dtw.TCts 叵二 dba.gCta 田口视图田L1同文词 +」可编程性 + j Ser-iceBnake 田_J 存储 尹_1安全性3 Teadief s LJ 安全性新逹素引迪… 全部丟器生成同 全郃重新型只◎全部禁淫①启动 PoverShelQJ刷新卫徘序IM祎SSSt 式水萍识朮许NULL佰连接隔利KiLrmER-5774030JOUNDEH-5774G3O\=unfcu<:-iiiinE出書百i军捋廣峙as图6-2 “新建索引”对话框3 •在新建索引对话框中,于“索引名称”文本框中输入新建索引的名称,可于“索引类型”下拉框中选择新建索引的类型,可单击“索引键列”列表框后的“添加”按钮,系统出现“选择索引键列”对话框,如图6-3所示。

图6-3选择索引键列l-:n|x|”心需肋初曲:素引名桶心.案引宾型叩.厂唯1切pit|5t・b_Ind"]4•在选择索引键列对话框中,列出了建立索引的表的所有字段,从中选择新建索引所应用的各个列名(即选择作为索引键的各个列) ,选择完毕后,单击“确定“按钮,系统返回“新建索引”对话框,如图6-4所示。

图6-4 “新建索引”对话框5 •在该新建索引对话框中,可通过“索引键列”列表框中的“排序顺序”下拉框,设置相应的索引键列的排序顺序。

(1)可选择“选项”选择页,进入“选项”设置界面,在此,可根据实际需要设置应用索引时的相关选项,如图6-5所示。

(2)可选择“包含性列”选择页,进入“包含性列”设置界面,在此,可设置另一个表中的列,只有非聚集索引,该选择页才可用。

(3)可选择“存储“选择页,进入“存储”设置界面,在此,可设置对指定的文件组或方案创建索引。

图6-5 “新建索引”对话框632使用SQL命令创建索引语法形式:CREATE [UNIQUE] [CLUSTERED| NONCLUSTERED ] INDEX in dex_ nameON { table | view } ( colu mn [ ASC | DESC ][,…n ]) [WITH[PAD_INDEX][[,]FILLFACTOR=fillfactor][[,]IGNORE_DUP_KEY][[,]DROP_EXISTING][[,]STATISTICS_NORECOMPUTE] [[,]SORT_IN_TEMPDB]][ON filegroup ]其中:UNIQUE :用于指定为表或视图创建唯一索引;CLUSTERED :用于指定创建的索引为聚集索引;NONCLUSTERED :用于指定创建的索引为非聚集索引,默认为非聚集索引;index_name :用于指定所创建的索引名称;table :用于指定创建索引的表的名称;view :用于指定创建索引的视图的名称。

column :用于指定被索引的列,即索引所应用的列(索引键中的列) ;ASC|DESC :用于指定具体某个索引列的升序或降序排序方向;PAD_INDEX :用于指定索引中间级中每个页(节点)上保持开放的空间;FILLFACTOR =fillfactor :用于指定在创建索引时,每个索引页的数据占索引页大小的百分比,fillfactor 的值为1 到100。

IGNORE_DUP_KEY :用于控制当往包含于一个唯一聚集索引中的列中插入重复数据时SQLServer 所作的反应。

DROP_EXISTING :用于指定应删除并重新创建已命名的先前存在的聚集索引或者非聚集索引。

STATISTICS_NORECOMPUTE :用于指定过期的索引统计不会自动重新计算。

SORT_IN_TEMPDB :用于指定创建索引时的中间排序结果将存储在tempdb 数据库中。

ON filegroup :用于指定存放索引的文件组。

【例6-1 】在数据库Teaching 中,为学生成绩表sgrade 建立一个基于“学号,姓名” 组合列的唯一、非聚集复合索引s_index1 。

Use TeachingGoCreate UNIQUE Index s_index1 ON sgrade(xh , xm)Go【例6-2 】在数据库Teaching 中,为学生成绩表sgrade 建立一个基于“所在系,班级,姓名”组合列的聚集复合索引s_index2 。

Use TeachingGoCreate CLUSTERED Index s_index2ON sgrade(szx , bj , xm)Go【例6-3 】在数据库Teaching 中,为学生成绩表sgrade 建立一个基于“姓名”列的非聚集索引s_index3 。

Use Teach ing GoCreate In dex s_in dex3 ON sgrade(xm DESC) Go6.4操作索引641 使用 SQL Server Management Studio 操作索引启动 SQL Server Management Studio ,并连接至U SQL Server 2008中的数据库,在 “对象资源管理器”窗口中展开“数据库”节点,再展开操作索引的表所属的数据 库名(比如Student ),再展开其“表”节点,展开索引所属的表名(比如 Stab ),展开其“索弓I”节点,右击要操作的索引名,出现弹出菜单,如图6-6所示。

相关文档
最新文档