SQLSERVER中的ALLOCATION SCAN和RANGE SCAN

浏览: 2159

写这篇文章的开始,我还不知道ALLOCATION SCAN的工作原理是怎样的,网上资料少得可怜

求助了园子里的某位大侠,他看了我的信息几天之后才回复我,不过他的回复里没有答案

这几天一直在苦思冥想,后来终于通过动手,验证出来了,知道ALLOCATION SCAN的工作原理是怎样的(结果中秋节过完就出差去了)

10月3日回到家马上开始动笔

在看下去之前请大家先看一下下面的文章

SQLSERVER聚集索引与非聚集索引的再次研究(上)
SQLSERVER聚集索引与非聚集索引的再次研究(下)
查看SQLSERVER内部数据页面的小插件Internals Viewer

SQLSERVER新建表的时候页面分配情况是怎样的?

存储引擎揭秘:基本结构之四——IAM页,IAM链和存储单元

SQL Server 2008存储结构之IAM结构

看这篇文章之前一定要非常清楚聚集索引页面/非聚集索引页面和IAM页面的作用

聚集索引页面:有指针,有记录,可以准确定位到数据页面

非聚集索引页面:有指向堆中的指针,可以准确定位到数据页面

IAM页面:IAM页面只知道表中数据页面的分配情况,他不知道这些数据页面里都存储了哪些表中的记录

 

 


知识准备

我们回顾一下聚集索引的知识

一个数据页面只有一条记录

大家知道在聚集索引页面里,每一行都会指向一个数据页,如下图

SQL脚本

 1 USE [tempdb]
2 GO
3 --DROP TABLE [dbo].[ct1]
4 --建立聚集索引表
5 CREATE TABLE ct1(c1 INT, c2 VARCHAR (5000));
6 GO
7 --建立聚集索引
8 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
9 GO
10
11 --插入测试数据
12 DECLARE @a INT;
13 SELECT @a = 1;
14 WHILE (@a <= 3)
15 BEGIN
16 INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
17 SELECT @a = @a + 1
18 END
19 GO
20
21
22
23
24 --查询数据
25 SELECT * FROM ct1
26
27
28
29 CREATE TABLE DBCCResult (
30 PageFID NVARCHAR(200),
31 PagePID NVARCHAR(200),
32 IAMFID NVARCHAR(200),
33 IAMPID NVARCHAR(200),
34 ObjectID NVARCHAR(200),
35 IndexID NVARCHAR(200),
36 PartitionNumber NVARCHAR(200),
37 PartitionID NVARCHAR(200),
38 iam_chain_type NVARCHAR(200),
39 PageType NVARCHAR(200),
40 IndexLevel NVARCHAR(200),
41 NextPageFID NVARCHAR(200),
42 NextPagePID NVARCHAR(200),
43 PrevPageFID NVARCHAR(200),
44 PrevPagePID NVARCHAR(200)
45 )
46
47 TRUNCATE TABLE [dbo].[DBCCResult]
48 --
49 INSERT INTO DBCCResult EXEC ('DBCC IND(tempdb,ct1,-1) ')
50
51 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC
52
53 DBCC TRACEON(3604,-1)
54 GO
55 DBCC PAGE([tempdb],1,175,3)
56 GO

上面的表有一个特点就是:一个数据页里只有一条记录
比如页面47,大家可以用DBCC PAGE命令看一下是否一个数据页只有一条记录

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE([tempdb],1,47,3)
4 GO

  1 PAGE: (1:47)
2
3
4 BUFFER:
5
6
7 BUF @0x0358317C
8
9 bpage = 0x15954000 bhash = 0x00000000 bpageno = (1:47)
10 bdbid = 2 breferences = 0 bUse1 = 17140
11 bstat = 0x1c0000b blog = 0x2159bbbb bnext = 0x00000000
12
13 PAGE HEADER:
14
15
16 Page @0x15954000
17
18 m_pageId = (1:47) m_headerVersion = 1 m_type = 1
19 m_typeFlagBits = 0x4 m_level = 0 m_flagBits = 0x0
20 m_objId (AllocUnitId.idObj) = 92 m_indexId (AllocUnitId.idInd) = 256
21 Metadata: AllocUnitId = 72057594043957248
22 Metadata: PartitionId = 72057594038976512 Metadata: IndexId = 1
23 Metadata: ObjectId = 53575229 m_prevPage = (1:114) m_nextPage = (1:79)
24 pminlen = 8 m_slotCnt = 1 m_freeCnt = 3077
25 m_freeData = 5113 m_reservedCnt = 0 m_lsn = (39:284:319)
26 m_xactReserved = 0 m_xdesId = (0:0) m_ghostRecCnt = 0
27 m_tornBits = 0
28
29 Allocation Status
30
31 GAM (1:2) = ALLOCATED SGAM (1:3) = ALLOCATED
32 PFS (1:1) = 0x60 MIXED_EXT ALLOCATED 0_PCT_FULL DIFF (1:6) = CHANGED
33 ML (1:7) = NOT MIN_LOGGED
34
35 Slot 0 Offset 0x60 Length 5017
36
37 Record Type = PRIMARY_RECORD Record Attributes = NULL_BITMAP VARIABLE_COLUMNS
38
39 Memory Dump @0x00BDC060
40
41 00000000: 30000800 02000000 0300f802 001100990...............
42 00000010: 13616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa
43 00000020: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
44 00000030: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
45 00000040: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
46 00000050: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
47 00000060: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
48 00000070: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
49 00000080: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
50 00000090: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
51 000000A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
52 000000B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
53 000000C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
54 000000D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
55 000000E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
56 000000F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
57 00000100: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
58 00000110: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
59 00000120: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
60 00000130: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
61 00000140: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
62 00000150: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
63 00000160: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
64 00000170: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
65 00000180: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
66 00000190: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
67 000001A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
68 000001B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
69 000001C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
70 000001D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
71 000001E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
72 000001F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
73 00000200: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
74 00000210: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
75 00000220: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
76 00000230: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
77 00000240: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
78 00000250: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
79 00000260: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
80 00000270: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
81 00000280: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
82 00000290: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
83 000002A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
84 000002B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
85 000002C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
86 000002D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
87 000002E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
88 000002F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
89 00000300: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
90 00000310: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
91 00000320: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
92 00000330: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
93 00000340: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
94 00000350: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
95 00000360: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
96 00000370: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
97 00000380: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
98 00000390: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
99 000003A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
100 000003B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
101 000003C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
102 000003D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
103 000003E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
104 000003F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
105 00000400: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
106 00000410: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
107 00000420: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
108 00000430: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
109 00000440: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
110 00000450: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
111 00000460: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
112 00000470: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
113 00000480: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
114 00000490: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
115 000004A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
116 000004B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
117 000004C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
118 000004D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
119 000004E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
120 000004F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
121 00000500: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
122 00000510: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
123 00000520: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
124 00000530: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
125 00000540: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
126 00000550: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
127 00000560: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
128 00000570: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
129 00000580: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
130 00000590: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
131 000005A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
132 000005B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
133 000005C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
134 000005D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
135 000005E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
136 000005F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
137 00000600: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
138 00000610: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
139 00000620: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
140 00000630: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
141 00000640: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
142 00000650: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
143 00000660: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
144 00000670: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
145 00000680: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
146 00000690: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
147 000006A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
148 000006B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
149 000006C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
150 000006D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
151 000006E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
152 000006F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
153 00000700: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
154 00000710: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
155 00000720: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
156 00000730: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
157 00000740: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
158 00000750: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
159 00000760: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
160 00000770: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
161 00000780: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
162 00000790: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
163 000007A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
164 000007B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
165 000007C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
166 000007D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
167 000007E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
168 000007F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
169 00000800: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
170 00000810: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
171 00000820: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
172 00000830: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
173 00000840: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
174 00000850: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
175 00000860: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
176 00000870: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
177 00000880: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
178 00000890: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
179 000008A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
180 000008B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
181 000008C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
182 000008D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
183 000008E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
184 000008F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
185 00000900: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
186 00000910: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
187 00000920: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
188 00000930: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
189 00000940: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
190 00000950: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
191 00000960: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
192 00000970: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
193 00000980: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
194 00000990: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
195 000009A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
196 000009B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
197 000009C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
198 000009D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
199 000009E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
200 000009F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
201 00000A00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
202 00000A10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
203 00000A20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
204 00000A30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
205 00000A40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
206 00000A50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
207 00000A60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
208 00000A70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
209 00000A80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
210 00000A90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
211 00000AA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
212 00000AB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
213 00000AC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
214 00000AD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
215 00000AE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
216 00000AF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
217 00000B00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
218 00000B10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
219 00000B20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
220 00000B30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
221 00000B40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
222 00000B50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
223 00000B60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
224 00000B70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
225 00000B80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
226 00000B90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
227 00000BA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
228 00000BB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
229 00000BC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
230 00000BD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
231 00000BE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
232 00000BF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
233 00000C00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
234 00000C10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
235 00000C20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
236 00000C30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
237 00000C40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
238 00000C50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
239 00000C60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
240 00000C70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
241 00000C80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
242 00000C90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
243 00000CA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
244 00000CB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
245 00000CC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
246 00000CD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
247 00000CE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
248 00000CF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
249 00000D00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
250 00000D10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
251 00000D20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
252 00000D30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
253 00000D40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
254 00000D50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
255 00000D60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
256 00000D70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
257 00000D80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
258 00000D90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
259 00000DA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
260 00000DB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
261 00000DC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
262 00000DD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
263 00000DE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
264 00000DF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
265 00000E00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
266 00000E10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
267 00000E20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
268 00000E30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
269 00000E40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
270 00000E50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
271 00000E60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
272 00000E70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
273 00000E80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
274 00000E90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
275 00000EA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
276 00000EB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
277 00000EC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
278 00000ED0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
279 00000EE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
280 00000EF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
281 00000F00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
282 00000F10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
283 00000F20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
284 00000F30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
285 00000F40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
286 00000F50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
287 00000F60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
288 00000F70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
289 00000F80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
290 00000F90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
291 00000FA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
292 00000FB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
293 00000FC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
294 00000FD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
295 00000FE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
296 00000FF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
297 00001000: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
298 00001010: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
299 00001020: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
300 00001030: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
301 00001040: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
302 00001050: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
303 00001060: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
304 00001070: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
305 00001080: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
306 00001090: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
307 000010A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
308 000010B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
309 000010C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
310 000010D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
311 000010E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
312 000010F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
313 00001100: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
314 00001110: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
315 00001120: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
316 00001130: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
317 00001140: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
318 00001150: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
319 00001160: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
320 00001170: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
321 00001180: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
322 00001190: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
323 000011A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
324 000011B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
325 000011C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
326 000011D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
327 000011E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
328 000011F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
329 00001200: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
330 00001210: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
331 00001220: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
332 00001230: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
333 00001240: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
334 00001250: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
335 00001260: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
336 00001270: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
337 00001280: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
338 00001290: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
339 000012A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
340 000012B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
341 000012C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
342 000012D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
343 000012E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
344 000012F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
345 00001300: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
346 00001310: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
347 00001320: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
348 00001330: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
349 00001340: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
350 00001350: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
351 00001360: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
352 00001370: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
353 00001380: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
354 00001390: 61616161 61616161 61†††††††††††††††††aaaaaaaaa
355 UNIQUIFIER = [NULL]
356
357 Slot 0 Column 1 Offset 0x4 Length 4
358
359 c1 = 2
360
361 Slot 0 Column 2 Offset 0x11 Length 5000
362
363 c2 = [Error converting to string (length 5000 bytes)]
364
365
366 DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

 

每一行都会指向一个数据页面,并且记录了数据页面的聚集索引第一个字段的值,这里聚集索引第一个字段就是c1了

--------------------------------------------------------------------------------------------------------------------

一个数据页面有多条记录

聚集索引页面的一行记录指向一个数据页面,如果一个数据页面有多行记录怎麽办?

那么聚集索引页面的一行记录会记录下数据页面里聚集索引的第一个字段的范围值

我修改一下上面的SQL脚本,让一个数据页面容纳4条记录

 1 USE [tempdb]
2 GO
3 --DROP TABLE [dbo].[ct1]
4 --建立聚集索引表
5 CREATE TABLE ct1(c1 INT, c2 VARCHAR (2000));
6 GO
7 --建立聚集索引
8 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
9 GO
10
11 --插入测试数据
12 DECLARE @a INT;
13 SELECT @a = 1;
14 WHILE (@a <= 12)
15 BEGIN
16 INSERT INTO ct1 VALUES (@a, replicate('a', 2000))
17 SELECT @a = @a + 1
18 END
19 GO
20
21
22
23
24 --查询数据
25 SELECT * FROM ct1
26
27
28
29 CREATE TABLE DBCCResult (
30 PageFID NVARCHAR(200),
31 PagePID NVARCHAR(200),
32 IAMFID NVARCHAR(200),
33 IAMPID NVARCHAR(200),
34 ObjectID NVARCHAR(200),
35 IndexID NVARCHAR(200),
36 PartitionNumber NVARCHAR(200),
37 PartitionID NVARCHAR(200),
38 iam_chain_type NVARCHAR(200),
39 PageType NVARCHAR(200),
40 IndexLevel NVARCHAR(200),
41 NextPageFID NVARCHAR(200),
42 NextPagePID NVARCHAR(200),
43 PrevPageFID NVARCHAR(200),
44 PrevPagePID NVARCHAR(200)
45 )
46
47 TRUNCATE TABLE [dbo].[DBCCResult]
48 --
49 INSERT INTO DBCCResult EXEC ('DBCC IND(tempdb,ct1,-1) ')
50
51 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC
52
53 DBCC TRACEON(3604,-1)
54 GO
55 DBCC PAGE([tempdb],1,78,3)
56 GO
57 DBCC PAGE([tempdb],1,115,3)
58 GO

这个SQL脚本的特点是一个数据页面容纳4条记录

比如数据页面115,大家可以用DBCC PAGE命令看一下是否一个数据页有四条记录

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE([tempdb],1,115,3)
4 GO

  1 DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
2
3 PAGE: (1:115)
4
5
6 BUFFER:
7
8
9 BUF @0x0354475C
10
11 bpage = 0x16296000 bhash = 0x00000000 bpageno = (1:115)
12 bdbid = 2 breferences = 0 bUse1 = 18204
13 bstat = 0x2c0000b blog = 0x2159bbbb bnext = 0x00000000
14
15 PAGE HEADER:
16
17
18 Page @0x16296000
19
20 m_pageId = (1:115) m_headerVersion = 1 m_type = 1
21 m_typeFlagBits = 0x4 m_level = 0 m_flagBits = 0x8000
22 m_objId (AllocUnitId.idObj) = 89 m_indexId (AllocUnitId.idInd) = 256
23 Metadata: AllocUnitId = 72057594043760640
24 Metadata: PartitionId = 72057594038779904 Metadata: IndexId = 1
25 Metadata: ObjectId = 21575115 m_prevPage = (1:90) m_nextPage = (0:0)
26 pminlen = 8 m_slotCnt = 4 m_freeCnt = 20
27 m_freeData = 8164 m_reservedCnt = 0 m_lsn = (39:282:52)
28 m_xactReserved = 0 m_xdesId = (0:0) m_ghostRecCnt = 0
29 m_tornBits = 0
30
31 Allocation Status
32
33 GAM (1:2) = ALLOCATED SGAM (1:3) = ALLOCATED
34 PFS (1:1) = 0x60 MIXED_EXT ALLOCATED 0_PCT_FULL DIFF (1:6) = NOT CHANGED
35 ML (1:7) = NOT MIN_LOGGED
36
37 Slot 0 Offset 0x60 Length 2017
38
39 Record Type = PRIMARY_RECORD Record Attributes = NULL_BITMAP VARIABLE_COLUMNS
40
41 Memory Dump @0x0768C060
42
43 00000000: 30000800 09000000 0300f802 001100e1 †0...............
44 00000010: 07616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa
45 00000020: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
46 00000030: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
47 00000040: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
48 00000050: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
49 00000060: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
50 00000070: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
51 00000080: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
52 00000090: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
53 000000A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
54 000000B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
55 000000C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
56 000000D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
57 000000E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
58 000000F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
59 00000100: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
60 00000110: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
61 00000120: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
62 00000130: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
63 00000140: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
64 00000150: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
65 00000160: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
66 00000170: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
67 00000180: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
68 00000190: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
69 000001A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
70 000001B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
71 000001C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
72 000001D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
73 000001E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
74 000001F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
75 00000200: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
76 00000210: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
77 00000220: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
78 00000230: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
79 00000240: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
80 00000250: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
81 00000260: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
82 00000270: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
83 00000280: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
84 00000290: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
85 000002A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
86 000002B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
87 000002C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
88 000002D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
89 000002E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
90 000002F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
91 00000300: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
92 00000310: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
93 00000320: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
94 00000330: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
95 00000340: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
96 00000350: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
97 00000360: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
98 00000370: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
99 00000380: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
100 00000390: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
101 000003A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
102 000003B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
103 000003C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
104 000003D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
105 000003E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
106 000003F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
107 00000400: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
108 00000410: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
109 00000420: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
110 00000430: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
111 00000440: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
112 00000450: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
113 00000460: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
114 00000470: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
115 00000480: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
116 00000490: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
117 000004A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
118 000004B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
119 000004C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
120 000004D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
121 000004E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
122 000004F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
123 00000500: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
124 00000510: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
125 00000520: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
126 00000530: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
127 00000540: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
128 00000550: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
129 00000560: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
130 00000570: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
131 00000580: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
132 00000590: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
133 000005A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
134 000005B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
135 000005C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
136 000005D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
137 000005E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
138 000005F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
139 00000600: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
140 00000610: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
141 00000620: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
142 00000630: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
143 00000640: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
144 00000650: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
145 00000660: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
146 00000670: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
147 00000680: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
148 00000690: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
149 000006A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
150 000006B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
151 000006C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
152 000006D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
153 000006E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
154 000006F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
155 00000700: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
156 00000710: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
157 00000720: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
158 00000730: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
159 00000740: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
160 00000750: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
161 00000760: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
162 00000770: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
163 00000780: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
164 00000790: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
165 000007A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
166 000007B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
167 000007C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
168 000007D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
169 000007E0: 61†††††††††††††††††††††††††††††††††††a
170 UNIQUIFIER = [NULL]
171
172 Slot 0 Column 1 Offset 0x4 Length 4
173
174 c1 = 9
175
176 Slot 0 Column 2 Offset 0x11 Length 2000
177
178 c2 = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
179 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
180 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
181 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
182 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
183 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
184 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
185 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
186 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
187 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
188 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
189 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
190 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
191 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
192 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
193 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
194 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
195 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
196
197 Slot 1 Offset 0x841 Length 2017
198
199 Record Type = PRIMARY_RECORD Record Attributes = NULL_BITMAP VARIABLE_COLUMNS
200
201 Memory Dump @0x0768C841
202
203 00000000: 30000800 0a000000 0300f802 001100e1 †0...............
204 00000010: 07616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa
205 00000020: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
206 00000030: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
207 00000040: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
208 00000050: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
209 00000060: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
210 00000070: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
211 00000080: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
212 00000090: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
213 000000A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
214 000000B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
215 000000C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
216 000000D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
217 000000E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
218 000000F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
219 00000100: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
220 00000110: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
221 00000120: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
222 00000130: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
223 00000140: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
224 00000150: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
225 00000160: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
226 00000170: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
227 00000180: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
228 00000190: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
229 000001A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
230 000001B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
231 000001C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
232 000001D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
233 000001E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
234 000001F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
235 00000200: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
236 00000210: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
237 00000220: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
238 00000230: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
239 00000240: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
240 00000250: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
241 00000260: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
242 00000270: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
243 00000280: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
244 00000290: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
245 000002A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
246 000002B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
247 000002C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
248 000002D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
249 000002E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
250 000002F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
251 00000300: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
252 00000310: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
253 00000320: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
254 00000330: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
255 00000340: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
256 00000350: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
257 00000360: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
258 00000370: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
259 00000380: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
260 00000390: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
261 000003A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
262 000003B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
263 000003C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
264 000003D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
265 000003E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
266 000003F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
267 00000400: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
268 00000410: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
269 00000420: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
270 00000430: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
271 00000440: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
272 00000450: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
273 00000460: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
274 00000470: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
275 00000480: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
276 00000490: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
277 000004A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
278 000004B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
279 000004C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
280 000004D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
281 000004E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
282 000004F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
283 00000500: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
284 00000510: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
285 00000520: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
286 00000530: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
287 00000540: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
288 00000550: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
289 00000560: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
290 00000570: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
291 00000580: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
292 00000590: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
293 000005A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
294 000005B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
295 000005C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
296 000005D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
297 000005E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
298 000005F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
299 00000600: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
300 00000610: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
301 00000620: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
302 00000630: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
303 00000640: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
304 00000650: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
305 00000660: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
306 00000670: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
307 00000680: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
308 00000690: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
309 000006A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
310 000006B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
311 000006C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
312 000006D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
313 000006E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
314 000006F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
315 00000700: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
316 00000710: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
317 00000720: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
318 00000730: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
319 00000740: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
320 00000750: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
321 00000760: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
322 00000770: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
323 00000780: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
324 00000790: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
325 000007A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
326 000007B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
327 000007C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
328 000007D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
329 000007E0: 61†††††††††††††††††††††††††††††††††††a
330 UNIQUIFIER = [NULL]
331
332 Slot 1 Column 1 Offset 0x4 Length 4
333
334 c1 = 10
335
336 Slot 1 Column 2 Offset 0x11 Length 2000
337
338 c2 = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
339 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
340 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
341 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
342 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
343 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
344 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
345 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
346 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
347 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
348 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
349 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
350 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
351 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
352 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
353 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
354 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
355 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
356
357 Slot 2 Offset 0x1022 Length 2017
358
359 Record Type = PRIMARY_RECORD Record Attributes = NULL_BITMAP VARIABLE_COLUMNS
360
361 Memory Dump @0x0768D022
362
363 00000000: 30000800 0b000000 0300f802 001100e1 †0...............
364 00000010: 07616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa
365 00000020: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
366 00000030: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
367 00000040: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
368 00000050: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
369 00000060: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
370 00000070: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
371 00000080: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
372 00000090: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
373 000000A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
374 000000B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
375 000000C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
376 000000D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
377 000000E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
378 000000F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
379 00000100: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
380 00000110: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
381 00000120: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
382 00000130: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
383 00000140: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
384 00000150: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
385 00000160: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
386 00000170: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
387 00000180: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
388 00000190: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
389 000001A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
390 000001B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
391 000001C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
392 000001D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
393 000001E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
394 000001F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
395 00000200: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
396 00000210: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
397 00000220: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
398 00000230: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
399 00000240: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
400 00000250: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
401 00000260: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
402 00000270: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
403 00000280: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
404 00000290: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
405 000002A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
406 000002B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
407 000002C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
408 000002D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
409 000002E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
410 000002F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
411 00000300: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
412 00000310: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
413 00000320: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
414 00000330: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
415 00000340: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
416 00000350: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
417 00000360: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
418 00000370: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
419 00000380: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
420 00000390: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
421 000003A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
422 000003B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
423 000003C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
424 000003D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
425 000003E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
426 000003F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
427 00000400: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
428 00000410: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
429 00000420: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
430 00000430: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
431 00000440: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
432 00000450: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
433 00000460: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
434 00000470: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
435 00000480: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
436 00000490: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
437 000004A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
438 000004B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
439 000004C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
440 000004D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
441 000004E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
442 000004F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
443 00000500: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
444 00000510: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
445 00000520: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
446 00000530: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
447 00000540: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
448 00000550: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
449 00000560: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
450 00000570: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
451 00000580: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
452 00000590: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
453 000005A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
454 000005B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
455 000005C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
456 000005D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
457 000005E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
458 000005F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
459 00000600: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
460 00000610: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
461 00000620: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
462 00000630: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
463 00000640: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
464 00000650: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
465 00000660: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
466 00000670: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
467 00000680: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
468 00000690: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
469 000006A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
470 000006B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
471 000006C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
472 000006D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
473 000006E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
474 000006F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
475 00000700: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
476 00000710: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
477 00000720: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
478 00000730: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
479 00000740: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
480 00000750: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
481 00000760: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
482 00000770: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
483 00000780: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
484 00000790: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
485 000007A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
486 000007B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
487 000007C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
488 000007D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
489 000007E0: 61†††††††††††††††††††††††††††††††††††a
490 UNIQUIFIER = [NULL]
491
492 Slot 2 Column 1 Offset 0x4 Length 4
493
494 c1 = 11
495
496 Slot 2 Column 2 Offset 0x11 Length 2000
497
498 c2 = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
499 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
500 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
501 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
502 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
503 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
504 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
505 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
506 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
507 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
508 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
509 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
510 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
511 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
512 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
513 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
514 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
515 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
516
517 Slot 3 Offset 0x1803 Length 2017
518
519 Record Type = PRIMARY_RECORD Record Attributes = NULL_BITMAP VARIABLE_COLUMNS
520
521 Memory Dump @0x0768D803
522
523 00000000: 30000800 0c000000 0300f802 001100e1 †0...............
524 00000010: 07616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa
525 00000020: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
526 00000030: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
527 00000040: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
528 00000050: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
529 00000060: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
530 00000070: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
531 00000080: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
532 00000090: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
533 000000A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
534 000000B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
535 000000C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
536 000000D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
537 000000E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
538 000000F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
539 00000100: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
540 00000110: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
541 00000120: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
542 00000130: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
543 00000140: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
544 00000150: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
545 00000160: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
546 00000170: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
547 00000180: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
548 00000190: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
549 000001A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
550 000001B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
551 000001C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
552 000001D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
553 000001E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
554 000001F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
555 00000200: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
556 00000210: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
557 00000220: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
558 00000230: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
559 00000240: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
560 00000250: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
561 00000260: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
562 00000270: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
563 00000280: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
564 00000290: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
565 000002A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
566 000002B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
567 000002C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
568 000002D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
569 000002E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
570 000002F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
571 00000300: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
572 00000310: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
573 00000320: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
574 00000330: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
575 00000340: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
576 00000350: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
577 00000360: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
578 00000370: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
579 00000380: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
580 00000390: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
581 000003A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
582 000003B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
583 000003C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
584 000003D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
585 000003E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
586 000003F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
587 00000400: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
588 00000410: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
589 00000420: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
590 00000430: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
591 00000440: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
592 00000450: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
593 00000460: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
594 00000470: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
595 00000480: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
596 00000490: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
597 000004A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
598 000004B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
599 000004C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
600 000004D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
601 000004E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
602 000004F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
603 00000500: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
604 00000510: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
605 00000520: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
606 00000530: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
607 00000540: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
608 00000550: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
609 00000560: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
610 00000570: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
611 00000580: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
612 00000590: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
613 000005A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
614 000005B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
615 000005C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
616 000005D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
617 000005E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
618 000005F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
619 00000600: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
620 00000610: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
621 00000620: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
622 00000630: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
623 00000640: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
624 00000650: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
625 00000660: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
626 00000670: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
627 00000680: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
628 00000690: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
629 000006A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
630 000006B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
631 000006C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
632 000006D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
633 000006E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
634 000006F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
635 00000700: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
636 00000710: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
637 00000720: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
638 00000730: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
639 00000740: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
640 00000750: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
641 00000760: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
642 00000770: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
643 00000780: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
644 00000790: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
645 000007A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
646 000007B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
647 000007C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
648 000007D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
649 000007E0: 61†††††††††††††††††††††††††††††††††††a
650 UNIQUIFIER = [NULL]
651
652 Slot 3 Column 1 Offset 0x4 Length 4
653
654 c1 = 12
655
656 Slot 3 Column 2 Offset 0x11 Length 2000
657
658 c2 = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
659 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
660 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
661 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
662 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
663 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
664 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
665 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
666 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
667 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
668 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
669 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
670 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
671 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
672 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
673 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
674 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
675 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
676
677
678 DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

一个数据页面有多条记录的情况下,聚集索引页面的每一行会记录数据页面的聚集索引第一个字段的在这个数据页面里的范围

这里聚集索引页面的每行记录的情况如下:

数据页面175里聚集索引第一个字段c1的范围是1~4

数据页面90里聚集索引第一个字段c1的范围是5~8

数据页面115里聚集索引第一个字段c1的范围是9~12

-----------------------------------------------------------------------------------

大家平时可能听到最多的就是全表扫描聚集索引扫描非聚集索引扫描远程扫描列存储索引扫描远程索引扫描

其实ALLOCATION SCANRANGE SCAN是针对全表扫描、聚集索引扫描、非聚集索引扫描这三个扫描的

在SSMS里查看执行计划的时候大家只会看到全表扫描、聚集索引扫描、非聚集索引扫描,但是SQLSERVER实际去扫描记录的时候

实际用到的是ALLOCATION SCAN和RANGE SCAN这两种扫描方式,而这两种扫描方式是不会显示在执行计划里的


聚集索引表

range scan的意思是说:根据聚集索引/非聚集索引的第一个字段的排序顺序依次去扫描每一行表中的记录

聚集索引表的range scan

一个数据页面只有一条记录的情况

SQL脚本如下:

 1 USE [tempdb]
2 GO
3 --DROP TABLE [dbo].[ct1]
4 --建立聚集索引表
5 CREATE TABLE ct1(c1 INT, c2 VARCHAR (8000));
6 GO
7 --建立聚集索引
8 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
9 GO
10
11 --插入测试数据
12 DECLARE @a INT;
13 SELECT @a = 1;
14 WHILE (@a <= 3)
15 BEGIN
16 INSERT INTO ct1 VALUES (@a, replicate('a', 8000))
17 SELECT @a = @a + 1
18 END
19 GO
20
21
22
23
24 --查询数据
25 SELECT * FROM ct1
26
27
28
29 CREATE TABLE DBCCResult (
30 PageFID NVARCHAR(200),
31 PagePID NVARCHAR(200),
32 IAMFID NVARCHAR(200),
33 IAMPID NVARCHAR(200),
34 ObjectID NVARCHAR(200),
35 IndexID NVARCHAR(200),
36 PartitionNumber NVARCHAR(200),
37 PartitionID NVARCHAR(200),
38 iam_chain_type NVARCHAR(200),
39 PageType NVARCHAR(200),
40 IndexLevel NVARCHAR(200),
41 NextPageFID NVARCHAR(200),
42 NextPagePID NVARCHAR(200),
43 PrevPageFID NVARCHAR(200),
44 PrevPagePID NVARCHAR(200)
45 )
46
47 TRUNCATE TABLE [dbo].[DBCCResult]
48 --
49 INSERT INTO DBCCResult EXEC ('DBCC IND(tempdb,ct1,-1) ')
50
51 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC
52
53 DBCC TRACEON(3604,-1)
54 GO
55 DBCC PAGE([tempdb],1,90,3)
56 GO

SQLSERVER扫描记录的方式可以用下面的图来表示

SQLSERVER根据c1(key)列向下扫描,第一行c1(key)列的值为1,对应的数据页是45,然后到数据页45把记录读出来

然后继续向下扫描,第二行c1(key)列的值为2,对应的数据页是115,然后到数据页115把记录读出来

然后继续向下扫描,第三行c1(key)列的值为3,对应的数据页是121,然后到数据页121把记录读出来

----------------------------------------------------------------------------------------

一个数据页面有多条记录的情况

我们重启一下SQLSERVER服务,清空一下tempdb数据库,再重新建立ct1表

SQL脚本如下:

 1 USE [tempdb]
2 GO
3
4 --建立聚集索引表
5 CREATE TABLE ct1(c1 INT, c2 VARCHAR (2000));
6 GO
7 --建立聚集索引
8 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
9 GO
10
11 --插入测试数据
12 DECLARE @a INT;
13 SELECT @a = 1;
14 WHILE (@a <= 12)
15 BEGIN
16 INSERT INTO ct1 VALUES (@a, replicate('a', 2000))
17 SELECT @a = @a + 1
18 END
19 GO
20
21
22
23
24 --查询数据
25 SELECT * FROM ct1
26
27
28
29 CREATE TABLE DBCCResult (
30 PageFID NVARCHAR(200),
31 PagePID NVARCHAR(200),
32 IAMFID NVARCHAR(200),
33 IAMPID NVARCHAR(200),
34 ObjectID NVARCHAR(200),
35 IndexID NVARCHAR(200),
36 PartitionNumber NVARCHAR(200),
37 PartitionID NVARCHAR(200),
38 iam_chain_type NVARCHAR(200),
39 PageType NVARCHAR(200),
40 IndexLevel NVARCHAR(200),
41 NextPageFID NVARCHAR(200),
42 NextPagePID NVARCHAR(200),
43 PrevPageFID NVARCHAR(200),
44 PrevPagePID NVARCHAR(200)
45 )
46
47 TRUNCATE TABLE [dbo].[DBCCResult]
48 --
49 INSERT INTO DBCCResult EXEC ('DBCC IND(tempdb,ct1,-1) ')
50
51 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC
52
53 DBCC TRACEON(3604,-1)
54 GO
55 DBCC PAGE([tempdb],1,175,3)
56 GO

SQLSERVER扫描记录的方式可以用下面的图来表示

SQLSERVER根据c1(key)列向下扫描,第一行c1(key)列的范围值为1~4,对应的数据页是115,

然后到数据页115里顺着c1列的值向下扫描,因为数据页面在建立聚集索引的时候,都已经根据c1列的值排好序了,只需要根据

c1列的值向下扫描并读取出记录就可以了

数据页115里的记录扫描并读取完毕,然后回到聚集索引页面,在聚集索引页的第二行c1(key)列的范围值为5~8,

对应的数据页是45,然后到数据页45里顺着c1列的值向下扫描

数据页45里的记录扫描并读取完毕,然后回到聚集索引页面,在聚集索引页的第三行c1(key)列的范围值为9~12,

对应的数据页是78,然后到数据页78里顺着c1列的值向下扫描

 

聚集索引表的range scan的过程就是这样,如此类推

---------------------------------------------------------------------------------------------------

聚集索引表的allocation scan

allocation scan的意思是说:在新建表并插入数据的时候,根据表中的IAM页面分配数据表的页面的先后顺序,来读取表中的记录

在继续往下看之前,请先看一下我之前写的文章:SQLSERVER新建表的时候页面分配情况是怎样的?

我们新建一个数据库,以便更容易观察表的页面分配情况

SQL脚本如下:

 1 use master
2 go
3
4 DROP DATABASE allocationordertest
5 GO
6 CREATE DATABASE allocationordertest
7 GO
8
9
10 USE allocationordertest
11 GO
12
13 ------------------------------------
14 CREATE TABLE DBCCResult (
15 PageFID NVARCHAR(200),
16 PagePID NVARCHAR(200),
17 IAMFID NVARCHAR(200),
18 IAMPID NVARCHAR(200),
19 ObjectID NVARCHAR(200),
20 IndexID NVARCHAR(200),
21 PartitionNumber NVARCHAR(200),
22 PartitionID NVARCHAR(200),
23 iam_chain_type NVARCHAR(200),
24 PageType NVARCHAR(200),
25 IndexLevel NVARCHAR(200),
26 NextPageFID NVARCHAR(200),
27 NextPagePID NVARCHAR(200),
28 PrevPageFID NVARCHAR(200),
29 PrevPagePID NVARCHAR(200)
30 )
31 ------------------------聚集索引表----------------------------------------
32 --建立聚集索引表
33 CREATE TABLE ct1(c1 INT, c2 VARCHAR (8000));
34 GO
35 --建立聚集索引
36 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
37 GO
38
39 --插入测试数据
40 DECLARE @a INT;
41 SELECT @a = 10;
42 WHILE (@a < 100)
43 BEGIN
44 INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
45 SELECT @a = @a + 1
46 END;
47 -------------------------------
48 DECLARE @a INT;
49 SELECT @a = 1;
50 WHILE (@a < 10)
51 BEGIN
52 INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
53 SELECT @a = @a + 1
54 END;

我们新建的ct1表的一条记录占用一个数据页,在插入数据到表中的时候,第一次插入c1列的值为10~99,第二次插入c1列的值为1~9,

我们查询一下数据:

1 --查询数据
2 SELECT * FROM ct1;

可以看到数据按照range scan的方式,根据c1列的值排好序并显示出来

我们用WITH (NOLOCK)这个query hint来再查询一下数据

1 --查询数据
2 SELECT * FROM ct1 WITH (NOLOCK);

数据按照 数据插入的顺序来显示出来:在插入数据到表中的时候,第一次插入c1列的值为10~99,第二次插入c1列的值为1~9

select出来的数据也是按照插入的顺序显示的

为什麽会这样???

大家可以看一下这篇文章:为什么NOLOCK反而返回更少的数据

 

由于篇幅的关系,这里就不详细讨论为什麽会出现allocation scan了,我们下面继续讲allocation scan的原理

----------------------------------------------------------------------------------

下面我们看一下页面的分配情况

先找出c1的值为99存放在哪个数据页面

由于页面分配是从小到大分配的,我们使用下面的SQL语句

1 TRUNCATE TABLE [dbo].[DBCCResult]
2
3 INSERT INTO DBCCResult EXEC ('DBCC IND(allocationordertest,ct1,-1) ')
4
5 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC

根据数据页面的ID的大小从小到大排列,第一次插入测试数据的时候插入c1列的值为10~99,就是说从DBCCResult表select出来的结果里

从第一行开始数到第99-10+2=92行的那个页面应该就是99存放的那个页面,为什麽是第92行?因为查询语句中没有排除掉IAM页和聚集索引页

IAM页和聚集索引页各占一个页面

1 SELECT * FROM [dbo].[DBCCResult]  ORDER BY [PageType] DESC 

 

我们看一下258这个数据页

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE(allocationordertest,1,258,3)
4 GO

  1 DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
2
3 PAGE: (1:258)
4
5
6 BUFFER:
7
8
9 BUF @0x036444D4
10
11 bpage = 0x19D56000 bhash = 0x00000000 bpageno = (1:258)
12 bdbid = 11 breferences = 1 bUse1 = 30485
13 bstat = 0xc0010b blog = 0x32121bb bnext = 0x00000000
14
15 PAGE HEADER:
16
17
18 Page @0x19D56000
19
20 m_pageId = (1:258) m_headerVersion = 1 m_type = 1
21 m_typeFlagBits = 0x4 m_level = 0 m_flagBits = 0xc000
22 m_objId (AllocUnitId.idObj) = 84 m_indexId (AllocUnitId.idInd) = 256
23 Metadata: AllocUnitId = 72057594043432960
24 Metadata: PartitionId = 72057594038452224 Metadata: IndexId = 1
25 Metadata: ObjectId = 2089058478 m_prevPage = (1:257) m_nextPage = (0:0)
26 pminlen = 8 m_slotCnt = 1 m_freeCnt = 3077
27 m_freeData = 5113 m_reservedCnt = 0 m_lsn = (42:310:9)
28 m_xactReserved = 0 m_xdesId = (0:0) m_ghostRecCnt = 0
29 m_tornBits = 0
30
31 Allocation Status
32
33 GAM (1:2) = ALLOCATED SGAM (1:3) = NOT ALLOCATED PFS (1:1) = 0x40 ALLOCATED 0_PCT_FULL
34 DIFF (1:6) = CHANGED ML (1:7) = NOT MIN_LOGGED
35
36 Slot 0 Offset 0x60 Length 5017
37
38 Record Type = PRIMARY_RECORD Record Attributes = NULL_BITMAP VARIABLE_COLUMNS
39
40 Memory Dump @0x077EC060
41
42 00000000: 30000800 63000000 0300f802 001100990...c...........
43 00000010: 13616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa
44 00000020: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
45 00000030: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
46 00000040: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
47 00000050: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
48 00000060: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
49 00000070: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
50 00000080: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
51 00000090: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
52 000000A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
53 000000B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
54 000000C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
55 000000D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
56 000000E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
57 000000F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
58 00000100: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
59 00000110: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
60 00000120: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
61 00000130: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
62 00000140: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
63 00000150: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
64 00000160: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
65 00000170: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
66 00000180: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
67 00000190: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
68 000001A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
69 000001B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
70 000001C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
71 000001D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
72 000001E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
73 000001F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
74 00000200: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
75 00000210: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
76 00000220: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
77 00000230: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
78 00000240: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
79 00000250: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
80 00000260: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
81 00000270: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
82 00000280: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
83 00000290: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
84 000002A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
85 000002B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
86 000002C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
87 000002D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
88 000002E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
89 000002F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
90 00000300: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
91 00000310: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
92 00000320: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
93 00000330: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
94 00000340: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
95 00000350: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
96 00000360: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
97 00000370: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
98 00000380: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
99 00000390: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
100 000003A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
101 000003B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
102 000003C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
103 000003D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
104 000003E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
105 000003F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
106 00000400: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
107 00000410: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
108 00000420: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
109 00000430: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
110 00000440: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
111 00000450: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
112 00000460: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
113 00000470: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
114 00000480: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
115 00000490: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
116 000004A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
117 000004B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
118 000004C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
119 000004D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
120 000004E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
121 000004F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
122 00000500: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
123 00000510: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
124 00000520: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
125 00000530: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
126 00000540: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
127 00000550: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
128 00000560: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
129 00000570: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
130 00000580: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
131 00000590: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
132 000005A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
133 000005B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
134 000005C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
135 000005D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
136 000005E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
137 000005F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
138 00000600: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
139 00000610: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
140 00000620: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
141 00000630: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
142 00000640: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
143 00000650: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
144 00000660: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
145 00000670: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
146 00000680: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
147 00000690: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
148 000006A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
149 000006B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
150 000006C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
151 000006D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
152 000006E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
153 000006F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
154 00000700: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
155 00000710: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
156 00000720: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
157 00000730: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
158 00000740: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
159 00000750: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
160 00000760: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
161 00000770: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
162 00000780: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
163 00000790: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
164 000007A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
165 000007B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
166 000007C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
167 000007D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
168 000007E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
169 000007F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
170 00000800: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
171 00000810: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
172 00000820: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
173 00000830: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
174 00000840: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
175 00000850: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
176 00000860: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
177 00000870: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
178 00000880: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
179 00000890: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
180 000008A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
181 000008B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
182 000008C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
183 000008D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
184 000008E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
185 000008F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
186 00000900: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
187 00000910: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
188 00000920: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
189 00000930: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
190 00000940: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
191 00000950: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
192 00000960: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
193 00000970: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
194 00000980: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
195 00000990: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
196 000009A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
197 000009B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
198 000009C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
199 000009D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
200 000009E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
201 000009F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
202 00000A00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
203 00000A10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
204 00000A20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
205 00000A30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
206 00000A40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
207 00000A50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
208 00000A60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
209 00000A70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
210 00000A80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
211 00000A90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
212 00000AA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
213 00000AB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
214 00000AC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
215 00000AD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
216 00000AE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
217 00000AF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
218 00000B00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
219 00000B10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
220 00000B20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
221 00000B30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
222 00000B40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
223 00000B50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
224 00000B60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
225 00000B70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
226 00000B80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
227 00000B90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
228 00000BA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
229 00000BB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
230 00000BC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
231 00000BD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
232 00000BE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
233 00000BF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
234 00000C00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
235 00000C10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
236 00000C20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
237 00000C30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
238 00000C40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
239 00000C50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
240 00000C60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
241 00000C70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
242 00000C80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
243 00000C90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
244 00000CA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
245 00000CB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
246 00000CC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
247 00000CD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
248 00000CE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
249 00000CF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
250 00000D00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
251 00000D10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
252 00000D20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
253 00000D30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
254 00000D40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
255 00000D50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
256 00000D60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
257 00000D70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
258 00000D80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
259 00000D90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
260 00000DA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
261 00000DB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
262 00000DC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
263 00000DD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
264 00000DE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
265 00000DF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
266 00000E00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
267 00000E10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
268 00000E20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
269 00000E30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
270 00000E40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
271 00000E50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
272 00000E60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
273 00000E70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
274 00000E80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
275 00000E90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
276 00000EA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
277 00000EB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
278 00000EC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
279 00000ED0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
280 00000EE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
281 00000EF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
282 00000F00: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
283 00000F10: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
284 00000F20: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
285 00000F30: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
286 00000F40: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
287 00000F50: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
288 00000F60: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
289 00000F70: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
290 00000F80: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
291 00000F90: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
292 00000FA0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
293 00000FB0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
294 00000FC0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
295 00000FD0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
296 00000FE0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
297 00000FF0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
298 00001000: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
299 00001010: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
300 00001020: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
301 00001030: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
302 00001040: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
303 00001050: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
304 00001060: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
305 00001070: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
306 00001080: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
307 00001090: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
308 000010A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
309 000010B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
310 000010C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
311 000010D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
312 000010E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
313 000010F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
314 00001100: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
315 00001110: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
316 00001120: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
317 00001130: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
318 00001140: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
319 00001150: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
320 00001160: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
321 00001170: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
322 00001180: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
323 00001190: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
324 000011A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
325 000011B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
326 000011C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
327 000011D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
328 000011E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
329 000011F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
330 00001200: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
331 00001210: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
332 00001220: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
333 00001230: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
334 00001240: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
335 00001250: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
336 00001260: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
337 00001270: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
338 00001280: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
339 00001290: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
340 000012A0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
341 000012B0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
342 000012C0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
343 000012D0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
344 000012E0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
345 000012F0: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
346 00001300: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
347 00001310: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
348 00001320: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
349 00001330: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
350 00001340: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
351 00001350: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
352 00001360: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
353 00001370: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
354 00001380: 61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa
355 00001390: 61616161 61616161 61†††††††††††††††††aaaaaaaaa
356 UNIQUIFIER = [NULL]
357
358 Slot 0 Column 1 Offset 0x4 Length 4
359
360 c1 = 99
361
362 Slot 0 Column 2 Offset 0x11 Length 5000
363
364 c2 = [Error converting to string (length 5000 bytes)]
365
366
367 DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

刚好c1的值就是99

我们看一下IAM页面

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE(allocationordertest,1,80,3)
4 GO

ct1表从45这个页面开始,一直到数据页272这个区间里进行分配,而ct1表的最后一个数据页是267

再看一下DBCCRESULT的结果

1 SELECT * FROM [dbo].[DBCCResult]  ORDER BY [PageType] DESC 

如果大家从页面259到267逐个逐个页面进行DBCC PAGE的话就会看到259~267页面里存放的c1值就是1~9

但是,数据页面45存放的c1值不是10,数据页77里存放的c1值才是10

为什麽会这样??

因为新建表的时候,表数据先存放在混合区,放在混合区里的数据页的里数据的排序具有不确定性

而当表数据超过8个页面的时候,数据开始在统一区分配,这时候统一区里的数据页的里数据的排序就会按照插入的顺序了

更详细的看我之前写的文章:SQLSERVER新建表的时候页面分配情况是怎样的?

我们借助Internals Viewer从宏观的角度看一下页面分配情况

我们关注紫色的小方格,紫色的小方格代表ct1表

上图用棕色笔画住的区域里的紫色的小方格表示SQLSERVER第一次分配的页面

上图用深绿色笔画住的区域里的紫色的小方格表示SQLSERVER第二次分配的页面

 

在这个小节的开头,allocation scan的解释是:

在新建表并插入数据的时候,根据表中的IAM页面分配数据表的页面的先后顺序,

来读取表中的记录

SQLSERVER第一次分配的页面从45页开始一直到258,这些页面里c1的值是:10~99

第二次分配的页面从259开始一直到267,这些页面里c1的值是1~9

所以,使用下面SQL语句,查询处理的结果的c1值先是10~99,然后是1~9

1 --查询数据
2 SELECT * FROM ct1 WITH (NOLOCK);

 

 ----------------------------------------------------------------------------------------

 我们再来做一个实验,修改一下上面的SQL脚本

 先drop掉allocationordertest数据库,再重新建立,SQL脚本如下:

 1 use master
2 go
3
4 DROP DATABASE allocationordertest
5 GO
6 CREATE DATABASE allocationordertest
7 GO
8
9
10 USE allocationordertest
11 GO
12
13 ------------------------------------
14 CREATE TABLE DBCCResult (
15 PageFID NVARCHAR(200),
16 PagePID NVARCHAR(200),
17 IAMFID NVARCHAR(200),
18 IAMPID NVARCHAR(200),
19 ObjectID NVARCHAR(200),
20 IndexID NVARCHAR(200),
21 PartitionNumber NVARCHAR(200),
22 PartitionID NVARCHAR(200),
23 iam_chain_type NVARCHAR(200),
24 PageType NVARCHAR(200),
25 IndexLevel NVARCHAR(200),
26 NextPageFID NVARCHAR(200),
27 NextPagePID NVARCHAR(200),
28 PrevPageFID NVARCHAR(200),
29 PrevPagePID NVARCHAR(200)
30 )
31 ------------------------聚集索引表----------------------------------------
32 --建立聚集索引表
33 CREATE TABLE ct1(c1 INT, c2 VARCHAR (8000));
34 GO
35 --建立聚集索引
36 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
37 GO
38
39 --插入测试数据
40 DECLARE @a INT;
41 SELECT @a = 21;
42 WHILE (@a <= 100)
43 BEGIN
44 INSERT INTO ct1 VALUES (@a, replicate('a', 8000))
45 SELECT @a = @a + 1
46 END
47 GO
48
49
50 DECLARE @a INT;
51 SELECT @a = 11;
52 WHILE (@a <= 20)
53 BEGIN
54 INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
55 SELECT @a = @a + 1
56 END
57 GO
58
59 DECLARE @a INT;
60 SELECT @a = 1;
61 WHILE (@a <= 10)
62 BEGIN
63 INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
64 SELECT @a = @a + 1
65 END
66 GO

 在插入数据到表中的时候,第一次插入c1列的值为21~100,第二次插入c1列的值为11~20,第三次插入c1列的值为1~10

 查询数据

1 --查询数据
2 SELECT * FROM ct1 with(nolock)

查询出来c1列的结果是21~100,11~20,1~10

这里我们要找c1的值为21、100、11、20、1、10这些c1值所在的页面

聚集索引页面为89

IAM页面为80

先看一下IAM页面吧

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE(allocationordertest,1,80,3)
4 GO

表的页面分配区间是45~271,这里为了节省时间,我就不左计算右计算了

我这里估算21、100、11、20、1、10这些c1值所在的页面,然后逐个页面进行DBCC PAGE

查找到的结果:

21存放在数据页77

100存放在数据页248

11存放在数据页249

20存放在数据页258

1存放在数据页259

10存放在数据页268

就是说三次分配的数据页分别是

第一次分配的页面是:45~248

第二次分配的页面是:249~258

第三次分配的页面是:259~268

为什麽需要先插入21~100的记录,然再插入剩余的记录?

因为SQLSERVER在新建表并开始分配页面的时候,分配在混合区里的页面没有排序确定性,

所以需要先要插入21~100的记录,让SQLSERVER分配的页面超过8页

具体可以看一下:SQLSERVER新建表的时候页面分配情况是怎样的?

 

 


堆表

由于堆表没有索引页面,所以不加order by的情况下总是以allocation scan的方式扫描数据

SQL脚本如下:

 1 -----------------------------------堆表---------------------------------------------------
2 --堆表永远使用allocation scan 除非加order by 将数据存入到tempdb进行排序
3 --建立堆表
4 USE [allocationordertest]
5 GO
6 CREATE TABLE t1(c1 INT, c2 VARCHAR (8000));
7 GO
8
9
10 --插入测试数据
11 DECLARE @a INT;
12 SELECT @a = 21;
13 WHILE (@a <= 100)
14 BEGIN
15 INSERT INTO t1 VALUES (@a, replicate('a', 8000))
16 SELECT @a = @a + 1
17 END
18 GO
19
20
21 DECLARE @a INT;
22 SELECT @a = 11;
23 WHILE (@a <= 20)
24 BEGIN
25 INSERT INTO t1 VALUES (@a, replicate('a', 5000))
26 SELECT @a = @a + 1
27 END
28 GO
29
30 DECLARE @a INT;
31 SELECT @a = 1;
32 WHILE (@a <= 10)
33 BEGIN
34 INSERT INTO t1 VALUES (@a, replicate('a', 5000))
35 SELECT @a = @a + 1
36 END
37 GO
38
39 --查询数据
40 SELECT * FROM t1

我们依然使用allocationordertest数据库

查询数据,注意不要加order by和with (nolock)

1 --查询数据
2 SELECT * FROM t1

查询出的结果是21~100,11~20,1~10

堆表的allocation scan和聚集索引表的allocation scan是一样的,这里就不详细叙述了


 

非聚集索引表

SQL脚本如下:

 1 ----------------------非聚集索引表--------------------------------------------
2 --建立非聚集索引表
3 USE [allocationordertest]
4 GO
5 CREATE TABLE nct1(c1 INT, c2 VARCHAR (8000));
6 GO
7 --建立非聚集索引
8 CREATE INDEX nt1c1 ON nct1(c1);
9 GO
10
11 --插入数据
12 DECLARE @a INT;
13 SELECT @a = 21;
14 WHILE (@a <= 100)
15 BEGIN
16 INSERT INTO nct1 VALUES (@a, replicate('a', 5000))
17 SELECT @a = @a + 1
18 END
19 GO
20
21
22 DECLARE @a INT;
23 SELECT @a = 11;
24 WHILE (@a <= 20)
25 BEGIN
26 INSERT INTO nct1 VALUES (@a, replicate('a', 5000))
27 SELECT @a = @a + 1
28 END
29 GO
30
31 DECLARE @a INT;
32 SELECT @a = 1;
33 WHILE (@a <= 10)
34 BEGIN
35 INSERT INTO nct1 VALUES (@a, replicate('a', 5000))
36 SELECT @a = @a + 1
37 END
38 GO

我们依然使用allocationordertest数据库

查询数据 都不用加with(nolock)

1 --allocation scan
2 SELECT * FROM nct1

查询c1列的结果是:21~100,11~20,1~10

1 --range scan
2 SELECT c1 FROM nct1

查询c1列的结果是1~100

 

为什么会出现两种不同的结果?

非聚集索引表有点复杂

扫描索引页 range scan,这里range scan跟聚集索引有点不同

非聚集索表,扫描有两种方式:

(1)扫描非聚集索引页(非聚集索引扫描)
(2)扫描堆里的数据页(全表扫描)

实际上,我们可以再细分

如果使用非聚集索引扫描的时候,肯定用的是range scan的方式,

如果使用全表扫描的时候,肯定使用的是allocation scan的方式

我们使用下面SQL语句看一下nct1表中的非聚集索引页面

 1 TRUNCATE TABLE [dbo].[DBCCResult]
2
3 INSERT INTO DBCCResult EXEC ('DBCC IND(allocationordertest,nct1,-1) ')
4
5 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC
6
7 DBCC TRACEON(3604,-1)
8 GO
9 DBCC PAGE(allocationordertest,1,115,3)
10 GO

 

非聚集索引的range scan,按照c1列的值一直向下扫描

首先扫描第一行c1的值为1,如果需要读取其他字段的值就根据指针到数据页去读取其他字段的值

到数据页读取其他字段的值完毕之后,再扫描第二行,第二行c1的值为2,如果需要读取其他字段的值就根据指针到

数据页去读取其他字段的值,到数据页读取其他字段的值完毕之后,再扫描第三行,一直如此类推

 

 

 

全表扫描的时候没有扫描非聚集索引页,只扫描了堆里的数据页,这时候跟堆表的情况是一样的

为什麽下面SQL语句会使用全表扫描?不用索引扫描,有时候SQLSERVER认为全表扫描比索引扫描快就会使用全表扫描

1 SELECT * FROM nct1 

具体可以看:SQLSERVER聚集索引与非聚集索引的再次研究(下)

 


归纳

allocation scan:堆表 、聚集索引表、非聚集索引表

range scan:聚集索引表、非聚集索引表

 


 

下面说一下使用SET STATISTICS IO ON 的时候,逻辑读次数的一个有趣问题

帖子地址:http://social.msdn.microsoft.com/Forums/zh-CN/cdadc542-2a98-4207-9e22-a7acd2caaec2/iamlogical-reads

LZ说:两次查询的逻辑读的次数都不一样,在帖子的回复里,博客园里某位大侠已经给出了答案

他的答案是:两个查询都分别使用了range scan和allocation scan

range scan的时候IAM页面是没有用的,只靠聚集索引页面/非聚集索引页面去扫描记录,所以SQLSERVER需要去读取索引页

allocation scan的时候聚集索引页面/非聚集索引页面是没有用的,只靠IAM页面去扫描记录,所以SQLSERVER需要去读取IAM页

所以,使用SET STATISTICS IO ON的时候,逻辑读取次数有时候会有出入

1 USE [GPOSDB]
2 GO
3 SET STATISTICS IO ON
4 SELECT * FROM [dbo].[SystemPara]
5
6 (17 行受影响)
7'SystemPara'。扫描计数 1,逻辑读取 2 次,物理读取 1 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。

 

 


总结

大家在做上面实验的时候,一定要看清楚查询语句,都没有加上order by的,没有加with (nolock)的时候不要加 with (nolock)

看完这篇文章之后,我相信您会更加清楚我在开头说的三句话

相关文章:

http://blogs.msdn.com/b/sqlserverstorageengine/archive/2006/11/09/when-can-allocation-order-scans-be-used.aspx

 

如有不对的地方,欢迎大家拍砖o(∩_∩)o 

2014-01-07补充:

今天群里面的胡平大侠介绍了,根据执行计划里索引扫描/聚集索引扫描的是否排序来判断是allocation scan还是range scan

推荐 0
本文由 桦仔 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册