最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SQL Server誤區(qū)30日談 第25天 有關(guān)填充因子的誤區(qū)

 更新時(shí)間:2013年01月09日 21:46:57   作者:  
填充因子僅僅在索引創(chuàng)建或重建時(shí)生效,SQL Server存儲(chǔ)引擎并不會(huì)一直保證頁內(nèi)的空閑值和填充因子保持一致
誤區(qū) #25:多個(gè)有關(guān)填充因子的誤區(qū)
    都是錯(cuò)誤的

25a) 填充因子是一直存在的
    不是的,通過Books Online可以看到(譯者:我在新版的BOL沒有找到這句話):
重要:
填充因子僅僅在索引創(chuàng)建或重建時(shí)生效,SQL Server存儲(chǔ)引擎并不會(huì)一直保證頁內(nèi)的空閑值和填充因子保持一致。如果為了保證頁內(nèi)的空余值和指定的填充因子保持一直那么填充因子就會(huì)失去意義。因?yàn)檫@時(shí)頁即使不滿也需要進(jìn)行分頁。

25 b)填充因子0和100是不同的
    錯(cuò)誤,由BOL的一句話可以看到
    填充因子0和100在各個(gè)方面都是一個(gè)意思。

25 c)填充因子設(shè)置為0會(huì)在非葉子節(jié)點(diǎn)保留 空間
    這是錯(cuò)誤的,這一點(diǎn)BOL上沒有說,我也不知道這個(gè)誤區(qū)從何而來,但這絕對(duì)是錯(cuò)誤的。你可以通過如下代碼證實(shí)這一點(diǎn):

復(fù)制代碼 代碼如下:

CREATE DATABASE foo;
GO
USE foo;
GO
CREATE TABLE t1 (c1 INT IDENTITY, c2 CHAR (1000) DEFAULT 'a');
CREATE CLUSTERED INDEX t1c1 ON t1 (c1);
GO
SET NOCOUNT ON;
GO
INSERT INTO t1 DEFAULT VALUES;
GO 10000

接下來設(shè)置填充因子為0并重建索引
復(fù)制代碼 代碼如下:

SELECT [fill_factor] FROM sys.indexes
WHERE NAME = 't1c1' AND [object_id] = OBJECT_ID ('t1');
GO
ALTER INDEX t1c1 ON t1 REBUILD WITH (FILLFACTOR = 100);
GO

上面的代碼執(zhí)行后,通過查看既定頁中的m_freeCnt列的值,也就是頁中可用空間的值:
復(fù)制代碼 代碼如下:

EXEC sp_allocationMetadata 't1';
GO
DBCC TRACEON (3604);
DBCC PAGE (foo, 1, 164, 3); -- the root page, from the SP output
GO
DBCC PAGE (foo, 1, 162, 1); -- the page ID in the DBCC PAGE output above
GO



通過上面代碼可以看到值為10,也就是說業(yè)內(nèi)不存在保留空間。這時(shí)一個(gè)誤區(qū),有關(guān)上面sp_allocationMetadata的實(shí)現(xiàn)細(xì)節(jié)請(qǐng)看這篇博文:this blog post。
您可能感興趣的文章:

相關(guān)文章

  • MySQL slave 延遲一列 外鍵檢查和自增加鎖

    MySQL slave 延遲一列 外鍵檢查和自增加鎖

    這篇文章是筆記的總結(jié),主要介紹了MySQL slave延遲一列,外鍵檢查和自增加鎖,感興趣的朋友可以參考下文,希望能幫助到你
    2021-09-09
  • MSSQL 數(shù)據(jù)庫同步教程

    MSSQL 數(shù)據(jù)庫同步教程

    MSSQL數(shù)據(jù)同步利用數(shù)據(jù)庫復(fù)制技術(shù)實(shí)現(xiàn)數(shù)據(jù)同步更新(來自網(wǎng)絡(luò),也是非常完美的教程)
    2009-11-11
  • SQL2000 事務(wù)回滾問題探討

    SQL2000 事務(wù)回滾問題探討

    SQL2000 事務(wù)回滾問題,對(duì)于嚴(yán)重的錯(cuò)誤,系統(tǒng)根本就不會(huì)執(zhí)行隨后對(duì)@@error的判斷,會(huì)直接終止執(zhí)行,感興趣的朋友可以參考下哈
    2013-04-04
  • SQL Server 日期相關(guān)資料詳細(xì)介紹

    SQL Server 日期相關(guān)資料詳細(xì)介紹

    對(duì)于開發(fā)人員來說,日期處理或許簡(jiǎn)單,或許很難。結(jié)合自己過往的開發(fā)經(jīng)驗(yàn)并整合網(wǎng)上的例子,總結(jié)出一些日期相關(guān)的操作,供自己備用及為大家分享
    2012-06-06
  • mssqlserver恢復(fù)ldf文件數(shù)據(jù)的方法

    mssqlserver恢復(fù)ldf文件數(shù)據(jù)的方法

    本文介紹mssqlserver怎么恢復(fù)ldf文件數(shù)據(jù)庫,簡(jiǎn)單的來說,MDF文件是SQL server用來存放數(shù)據(jù)的數(shù)據(jù)庫文件;LDF文件SQL server是日志文件,存放了對(duì)數(shù)據(jù)庫進(jìn)行的所有操作信息
    2013-11-11
  • sql中的char與varchar有什么區(qū)別

    sql中的char與varchar有什么區(qū)別

    varchar使用起來較為靈活,節(jié)省了一定的空間,但是它在判斷位數(shù)時(shí)也耗費(fèi)了時(shí)間,從整個(gè)系統(tǒng)的性能角度來說,char數(shù)據(jù)類型處理的速度更快,有時(shí)甚至可以超出varchar處理速度的很多倍,本文給大家介紹
    sql中的char與varchar有什么區(qū)別,一起看看吧
    2023-10-10
  • sqlserver substring函數(shù)使用方法小結(jié)

    sqlserver substring函數(shù)使用方法小結(jié)

    在操作sqlserver時(shí)候用到了substring函數(shù),特整理一些實(shí)例,需要的朋友可以參考下。
    2009-12-12
  • sql語句返回主鍵SCOPE_IDENTITY()

    sql語句返回主鍵SCOPE_IDENTITY()

    sql語句返回主鍵SCOPE_IDENTITY()
    2011-09-09
  • SQL  BETWEEN 的常見用法小結(jié)

    SQL  BETWEEN 的常見用法小結(jié)

    BETWEEN操作符是SQL中非常有用的工具,它允許你快速選取某個(gè)范圍內(nèi)的值,本文給大家介紹SQL  BETWEEN 的常見用法,感興趣的朋友一起看看吧
    2025-04-04
  • SQL Server誤區(qū)30日談 第19天 Truncate表的操作不會(huì)被記錄到日志

    SQL Server誤區(qū)30日談 第19天 Truncate表的操作不會(huì)被記錄到日志

    這個(gè)誤區(qū)也同樣流傳已久,我想是時(shí)候通過一些Demo進(jìn)行揭穿了
    2013-01-01

最新評(píng)論

贡山| 农安县| 钟山县| 大关县| 万载县| 广安市| 西和县| 长阳| 南涧| 宜宾县| 浮梁县| 刚察县| 石渠县| 雷州市| 吴江市| 新和县| 鱼台县| 桐柏县| 宝山区| 武威市| 福建省| 甘谷县| 察哈| 江口县| 长兴县| 临西县| 宜都市| 九江市| 宜章县| 灵丘县| 兴隆县| 佛山市| 南阳市| 孝昌县| 信阳市| 阿克苏市| 讷河市| 石首市| 孟州市| 济宁市| 通江县|