码迷,mamicode.com
首页 > 其他好文 > 详细

06.索引-非聚集索引(2)-堆表

时间:2016-11-06 17:01:02      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:_id   cci   string   file   color   eve   tab   技术分享   varchar   

删除聚集索引
DROP INDEX CIX_Employee001_Id ON Employee001
 
索引情况
 
 
SELECT
database_id,
index_id,
index_type_desc,
index_depth,
index_level,
page_count
FROM sys.dm_db_index_physical_stats(DB_ID(‘IndexDB‘),OBJECT_ID(‘Employee001‘),null,null,null)
 
 
 
技术分享
 
 
 
TRUNCATE TABLE DBCCIndResult
INSERT INTO DBCCIndResult EXEC(‘DBCC IND(IndexDB,Employee001,-1)‘)
 
 
SELECT *
FROM DBCCIndResult
WHERE PageType=2
AND IndexID =3
 
 
 
技术分享
 
找到根
 
技术分享
 
 
 
 
查看根页
 
DBCC TRACEON(3604)
DBCC PAGE (IndexDB, 1, 442, 3);
 
 
技术分享
 
 
这时 由于没有聚集索引了,所以也就没有Id(Key),取而代之的是HEAP RID 也就是RID 行定位器
 
这个指针(RID)由页里行的(文件号:页号:槽号,file identifier :page number :slot number)组成
可以通过下面的方式 查看
 
 
DECLARE@HeapRidBINARY(8)
SET @HeapRid = 0xB800000001003E00
SELECT     
       CONVERT (VARCHAR(5),
                    CONVERT(INT, SUBSTRING(@HeapRid, 6, 1)
                               + SUBSTRING(@HeapRid, 5, 1)))
     + ‘:‘
     + CONVERT(VARCHAR(10),
                    CONVERT(INT, SUBSTRING(@HeapRid, 4, 1)
                               + SUBSTRING(@HeapRid, 3, 1)
                               + SUBSTRING(@HeapRid, 2, 1)
                               + SUBSTRING(@HeapRid, 1, 1)))
     + ‘:‘
          + CONVERT(VARCHAR(5),
                    CONVERT(INT, SUBSTRING(@HeapRid, 8, 1)
                               + SUBSTRING(@HeapRid, 7, 1)))
                               AS ‘Fileid:Pageid:Slot‘
 
 
 
 
技术分享
 
 
 
 
 
 
 
查询
 
技术分享
 
 
 
技术分享
 
 
 
技术分享
 
 
 

06.索引-非聚集索引(2)-堆表

标签:_id   cci   string   file   color   eve   tab   技术分享   varchar   

原文地址:http://www.cnblogs.com/ywnwa417/p/6035253.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!