欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

SQLServer內(nèi)幕之數(shù)據(jù)行的結(jié)構(gòu)

表的數(shù)據(jù)行具有圖6-5 所示的一般結(jié)構(gòu) (只要數(shù)據(jù)以未壓縮的形式存儲)。此格式稱為 FixedVar 格式, 因為所有固定長度列的數(shù)據(jù)首先存儲, 后跟所有可變長度列的數(shù)據(jù)。表6-7 顯示了存儲在每個 FixedVar 行中的信息。

專注于為中小企業(yè)提供網(wǎng)站設計制作、成都網(wǎng)站制作服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)雞澤免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。

SQL Server內(nèi)幕之數(shù)據(jù)行的結(jié)構(gòu)

SQL Server內(nèi)幕之數(shù)據(jù)行的結(jié)構(gòu)

狀態(tài)位 A 包含指示行屬性的位圖。這些位具有以下含義:

Bit 0 表示特殊的版本控制信息。在 SQL server 2012 中, 這始終是0。

Bits 1到3作為3位值, 

0 (000) 表示主記錄, 

1 (001) 表示轉(zhuǎn)發(fā)的記錄, 

2 (010) 表示轉(zhuǎn)發(fā)存根, 

3 (011) 指示一個索引記錄, 

4 (100) 指示一個 BLOB 片段或行溢出數(shù)據(jù), 

5 (101) 表示虛影索引記錄, 

6 (110) 表示虛影數(shù)據(jù)記錄, 

7 (111) 表示虛影版本記錄。

Bit 4 表示存在空位圖。在 SQL server 2012 中, 即使在任何列中都不允許有 null, 

也始終存在空位圖。

Bit 5 表示行中存在可變長度列。

Bit 6 表示該行包含版本控制信息。

Bit 7 在 SQL server 2012 中不使用。

狀態(tài)位 B 字段中使用的唯一位表示該記錄是虛影轉(zhuǎn)發(fā)的記錄。

您可以在圖6-5 和表6-7 中看到第三個和第四個字節(jié)指示行的固定長度部分的長度。如圖6-5 所示, 它的長度不包括2個字節(jié)的列數(shù)和空位圖, 這取決于表中列的總數(shù), 這是可變長度。解釋這些位中數(shù)據(jù)的另一種方法是, 在該行中可以找到列數(shù)的位置。例如, 如果第三個和第四個字節(jié) (字節(jié) 2–3) 包含值 0x0016 (即十進制 22), 則表示該行不僅在列數(shù)的值之前有22個字節(jié), 而且還意味著可以在字節(jié)22中找到列數(shù)的值。

在每個固定長度或可變長度數(shù)據(jù)塊中, 數(shù)據(jù)以創(chuàng)建表的列順序存儲。例如, 假設使用以下命令創(chuàng)建了一個表:

CREATE TABLE Test1

(

Col1 int NOT NULL,

Col2 char(25) NOT NULL,

Col3 varchar(60) NULL,

Col4 money NOT NULL,

Col5 varchar(20) NOT NULL

);

此行的固定長度數(shù)據(jù)部分包含 Col1 的數(shù)據(jù), 后跟 Col2 的數(shù)據(jù), 后跟 Col4 的數(shù)據(jù)。可變長度數(shù)據(jù)部分包含 Col3 的數(shù)據(jù), 后跟 Col5 的數(shù)據(jù)。對于僅包含固定長度數(shù)據(jù)的行, 以下值為 true。

數(shù)據(jù)行第一個字節(jié)的第一個十六進制數(shù)字為 1, 表示不存在可變長度列。(第一個十六進制數(shù)字包括位4到 7; bits 6 和7總是 0, 如果不存在變長列, 則位5也是0。位4始終為 1, 因此四位的值顯示為1。

數(shù)據(jù)行結(jié)束于空位圖之后, 它遵循固定長度的數(shù)據(jù) (即, 圖6-5 中顯示的陰影部分不會存在于只有固定長度數(shù)據(jù)的行中)。

每個數(shù)據(jù)行的總長度是相同的。

具有任何可變長度列的數(shù)據(jù)行有一個列偏移量數(shù)組, 每個非 NULL 可變長度列都有一個2字節(jié)的條目, 指示列在其中結(jié)束的行中的位置。(術(shù)語偏移和位置不是完全可互換的。偏移量是基于0的, 而位置是基于1的。偏移量為7的字節(jié)位于行中的第八字節(jié)位置。)存儲具有 NULL 值的可變長度列涉及一些特殊問題, 如后面的 "null 和可變長度列" 部分所討論的。

分享題目:SQLServer內(nèi)幕之數(shù)據(jù)行的結(jié)構(gòu)
網(wǎng)頁路徑:http://chinadenli.net/article28/gidsjp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設、網(wǎng)站策劃網(wǎng)站內(nèi)鏈、企業(yè)網(wǎng)站制作手機網(wǎng)站建設、網(wǎng)站維護

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站