SQLServer创建索引的实现代码

SQLServer创建索引的实现代码
什么是索引
目录页(指数)汉语词典为例:在汉语词典汉字存储的网页,在SQL Server数据记录存储的页面,而每个页面的容量通常是4K。为了加快搜索速度,汉语词(字)代码一般按拼音、笔画、部首等目录(Suo Yin),我们可以根据拼音、笔画搜索方式选择,快速找到所需的字(词)。
同样,SQL Server允许用户在表中创建索引,指定要提前排序的列,从而大大提高查询速度。
SQL Server中的数据也存储页(4KB)
索引:SQL Server编排的内部方法,它提供了SQL Server编排查询数据的方法。
索引页:在数据库中存储索引的数据页;索引页类似于用拼音或笔画排序的汉字(word)目录。
索引的作用:利用索引,可以大大提高数据库的检索速度,提高数据库的性能

指数型
唯一索引:唯一的索引不允许两行具有相同的索引值。
主键索引:为表定义主键会自动创建主键索引,主键索引是惟一索引的一种特殊类型。主键索引要求主键中的每个值都是唯一的,而不是空的。
集群:表中的行的物理顺序与键值的逻辑(索引)顺序相同,每个表只能有一个。
非聚集索引(非聚集):由非聚集索引指定的表的逻辑顺序。数据存储在一个位置,索引存储在另一个位置,索引包含指向数据存储位置的指针。可超过249个。

索引类型:在中文字典中,我希望您能理解聚集索引和非聚合索引这两个概念。

唯一索引:
唯一的索引不允许这两行具有相同的索引值。
如果现有数据中存在重复的键值,大多数数据库不允许新创建的唯一索引是与表保存。数据库也拒绝接受数据时,新数据将表中重复的键值。例如,如果唯一的指标是在stuinfo表的愚蠢列创建,所有学生的身份证号码不能重复。
提示:创建了唯一的约束,将自动创建唯一索引。虽然唯一索引有助于查找信息,但建议使用主键约束或唯一约束以获得最佳性能。

主键索引:
主键索引是通过在数据库关系图中定义表的主键来自动创建的,主键索引是惟一索引的一种特殊类型。主键索引要求主键中的每个值都是唯一的。当查询中使用主键索引时,它也允许快速访问数据。

聚集索引(聚集索引)
在一个聚集索引,表中的行的物理顺序为逻辑相同(指数)的关键价值秩序。一个表只能包含一个聚集索引。例如,汉字代码默认页码,每页字典中的按字母顺序排序的字母,音标一,B,C,D,X,Y,Z是索引的逻辑顺序和页码1, 2, 3…它的物理顺序,通过拼音默认排序字典是为索引顺序和逻辑顺序相同。就是这个词对应的页码(词)的拼音后更大。例如,单词数(字)对应的拼音哈晚于工作数与拼音对应的DS(单词)。

非聚集索引(非聚集)
如果指标汇总,表中的行的物理顺序没有键值的逻辑顺序匹配。聚集索引有更快的数据访问速度比一个非聚集索引(非聚集索引)。例如,索引的行程是非聚集索引,和页号对应1字(词)可能大于对应3个字的页号(后字)。
提示:在SQL Server中,一个表只能创建1个聚合索引和多个非聚集索引。

如何创建索引
使用T-SQL语句创建索引的语法:
复制代码代码如下所示:
{ } {创造独特的集群|聚集}
指数index_name
在table_name(column_name…)
{填充因子= x }

q代表一个唯一索引,可选的
Q聚集,聚集是一个聚集索引和非聚集索引,可选
q FILLFACTOR表示填充因子,指定一个值0和100之间,这表明空间的索引页填充率

创建表的stumarks writtenexam列索引:
复制代码代码如下所示:
使用studb

如果存在(选择名字,还是一样的)
name = 'ix_writtenexam)
stumarks.ix_writtenexam下降指数
/ *——写列创建非聚集索引:填充因子为30%× /
创建非聚集索引ix_writtenexam
在stumarks(writtenexam)
填充因子为30

/ * * / ----- ----根据指定的查询索引ix_writtenexam
SELECT * FROM stumarks(指数= ix_writtenexam)
在60和90之间的writtenexam

虽然我们可以索引SQL Server查询数据的指定,我们通常不需要我们指定manually.sql服务器会自动优化基于我们创建的索引的查询。

指数的优缺点
优势
-加快访问速度
-加强线的唯一性
缺点
-基于索引的表需要数据库中更多的存储空间。
-操作数据的命令需要较长的处理时间,因为它们需要更新索引。

创建索引的指导原则
根据以下标准选择设置索引的列。
-此列用于频繁搜索。
-此列用于对数据进行排序。
请不要使用下面的列来创建索引:
-列只包含几个不同的值。
-表只包含几行。为一个小表创建索引可能不是一件好事情,因为SQL Server在索引中搜索数据比在表中一行一行搜索所花费的时间要长。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部