--删除主键 alter table 表名 drop constraint 主键名 --添加主键 alter table 表名 add constraint 主键名 primary key(字段名1,字段名2……) --添加非聚集索引的主键 alter table 表名 add constraint ...
分类:
数据库 时间:
2016-11-19 09:58:02
阅读次数:
248
和索引重建最相关的是填充因子。当创建一个新索引,或重建一个存在的索引时,你可以指定一个填充因子,它是在索引创建时索引里的数据页被填充的数量。填充因子设置为100意味着每个索引页100%填满,50%意味着每个索引页50%填满。如果你创建一个填充因子为100的聚集索引(在一个非单调递增的列上),那意味着 ...
分类:
数据库 时间:
2016-11-15 19:32:19
阅读次数:
173
摘要: 1.闩锁就像是内存上的锁,随着越来越多的线程参与进来,他们争相访问同一块内存,导致堵塞。2.自旋锁就是闩锁,不同之处是如果访问的内存不可用,它将继续检查轮询一段时间。3.拴锁和自旋锁是我们无法控制的,由sqlserver自动维护,但是我们应积极寻找避免他们发生堵塞的方法。4。id作为聚集索引 ...
分类:
其他好文 时间:
2016-11-09 11:50:02
阅读次数:
227
避免书签查找 可以将查询需要的列加入非聚集索引中 联合索引会导致所有的非聚集索引页中都会冗余一份列的数据,尤其是当这些列不作为条件,只作为返回值时候,是一种浪费 因此可以 选择将查询结果需要的列加入覆盖索引 这时候 覆盖的列 只会存在于叶节点中,定位到索引后,直接从页节点返回数据,避免再根据RID ...
分类:
其他好文 时间:
2016-11-06 17:14:17
阅读次数:
99
如果存在聚集索引并且查找的列不在 非聚集索引的键列中 而在没有聚集索引的表中 使用RID Lookup 书签查找可能因为开销过大导致一些查询直接进行表扫描 聚集索引所有数据都在索引中(数据页也是索引的一部分),因此可以直接通过聚集索引找到所有的列 定位到索引,也就意味着数据找到了 但是非聚集索引定位 ...
分类:
其他好文 时间:
2016-11-06 17:10:57
阅读次数:
131
删除聚集索引 DROP INDEX CIX_Employee001_Id ON Employee001 索引情况 SELECT database_id, index_id, index_type_desc, index_depth, index_level, page_count FROM sys. ...
分类:
其他好文 时间:
2016-11-06 17:01:02
阅读次数:
204
建立非聚集索引 CREATE NONCLUSTERED INDEX NCIX_Employee001_Department_Organization ON Employee001(Department,Organization); ALTER INDEX NCIX_Employee001_Depar ...
分类:
其他好文 时间:
2016-11-06 16:53:56
阅读次数:
193
创建聚集索引并重新组织 CREATE UNIQUE CLUSTERED INDEX CIX_Employee001_Id ON Employee001(Id); ALTER INDEX CIX_Employee001_Id ON Employee001 REORGANIZE; 索引情况 SELECT ...
分类:
其他好文 时间:
2016-11-06 16:22:40
阅读次数:
275
堆表中 1.没有聚集索引页 2.数据页中的数据都是无序的 聚集表中 1.数据页都是有序的,按照索引键列排序 2.索引页指向数据页,数据页本身也是聚集索引的一部分 3.数据页的IndexLevel为0,索引页依次为1 2 3 。。。,最大的IndexLevel的索引页只有一个,即根 ...
分类:
其他好文 时间:
2016-11-06 16:22:00
阅读次数:
209
SQL索引在数据库优化中占有一个非常大的比例, 一个好的索引的设计,可以让你的效率提高几十甚至几百倍,在这里将带你一步步揭开他的神秘面纱。 1.1 什么是索引? SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间 下面举 ...
分类:
数据库 时间:
2016-10-24 01:50:44
阅读次数:
195