简单介绍 在SQL Server中,数据是按页进行存放的。而为表加上聚集索引后,SQL Server对于数据的查找就是依照聚集索引的列作为keyword进行了。因此对于聚集索引的选择对性能的影响就变得十分重要了。本文从旨在从性能的角度来谈聚集索引的选择,但这不过从性能方面考虑。对于有特殊业务要求的表...
分类:
数据库 时间:
2015-07-13 20:39:28
阅读次数:
194
1、MyISAM 使用B+Tree 作为索引结构,叶子节点的data存放指针,也就是记录的地址。对于主键索引和辅助索引都是一样的。2、InnoDB 也使用B+Tree作为索引结构,也别需要注意的是,对于主键索引,InnoDB 使用聚集索引,InnoDB的数据文件本身就是就是索引文件。而MyISAM,...
分类:
数据库 时间:
2015-07-12 20:14:11
阅读次数:
150
写在前面:这是第一篇T-SQL查询高级系列文章.但是T-SQL查询进阶系列还远远没有写完。这个主题放到高级我想是因为这个主题需要一些进阶的知识作为基础..如果文章中有错误的地方请不吝指正.本篇文章的内容需要索引...
分类:
数据库 时间:
2015-07-09 13:22:32
阅读次数:
121
有些人可能对主键和聚集索引有所混淆,其实这两个是不同的概念,下面是一个简单的描述。不想看绕口文字者,直接看两者的对比表。尤其是最后一项的比较。主键(PRIMARY KEY )来自MSDN的描述:表通常具有包含唯一标识表中每一行的值的一列或一组列。这样的一列或多列称为表的主键 (PK),用于强制表的实...
分类:
其他好文 时间:
2015-07-01 20:06:12
阅读次数:
165
Ø 索引 1、 什么是索引 索引就是数据表中数据和相应的存储位置的列表,利用索引可以提高在表或视图中的查找数据的速度。 2、 索引分类 数据库中索引主要分为两类:聚集索引和非聚集索引。SQL Server 2005还提供了唯一索引、索引视图、全文索引、xml索引等等。聚集索引和非聚集索引是数据库引擎...
分类:
数据库 时间:
2015-07-01 12:11:00
阅读次数:
151
唯一索引(UNIQUE INDEX)当主键创建时如果不设置为聚集索引,那么就一定是唯一的非聚集索引。实际上,唯一索引,故名思议就是它要求该列上的值是唯一的。唯一索引能够保证索引键中不包含重复的值,从而使表中的每一行从某种方式上具有唯一性。创建 UNIQUE 约束和创建与约束无关的唯一索引并没有明显的...
分类:
数据库 时间:
2015-06-30 20:22:53
阅读次数:
122
从Paul White的推特上看到,在SQL Server 2014里,对于表变量(Table Variables),它是支持非唯一聚集索引(Non-Unique Clustered Indexes)和非聚集索引(Non-Clustered Indexes)的。看到这个,我决定在自己的虚拟机里尝试下...
分类:
数据库 时间:
2015-06-29 13:11:29
阅读次数:
205
索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度。 索引包含由表或视图中的一列或多列生成的键。 这些键存储在一个结构(B 树)中,使 SQL Server 可以快速有效地查找与键值关联的行。 表或视图可以包含以下类型的索引: 聚集 聚集索引根据数据行的键值在表或视图中排序和存储这些...
分类:
数据库 时间:
2015-06-27 18:11:40
阅读次数:
153
转载自:http://www.jb51.net/article/30905.htm聚集索引,数据实际上是按顺序存储的,数据页就在索引页上。就好像参考手册将所有主题按顺序编排一样。一旦找到了所要搜索的数据,就完成了这次搜索,对于非聚集索引,索引是安全独立于数据本身结构的,在索引中找到了寻找的数据,然后...
分类:
其他好文 时间:
2015-06-25 19:31:05
阅读次数:
117
今天这篇文章我想谈下堆表上特有的性能问题:转发记录(Forwarding Records)。首先我们要澄清下什么是堆表:堆表就是没有聚集索引定义的表。它对插入新记录非常快,但当你读取数据时非常慢。读取数据会在你的存储子系统上引入随机存取(random I/O),有时候当你碰到转发记录,它会进一步降低...
分类:
其他好文 时间:
2015-06-24 10:34:05
阅读次数:
162