2010年9月29日 星期三

SQL PK重註

由於PK用太久
會導致資訊越來越分散
也會影響SQL速度
所以MS有分享了一個方式可以讓人檢查
也可以重註PK方式

檢查方式

SELECT a.index_id, name, avg_fragmentation_in_percent, *
FROM sys.dm_db_index_physical_stats (DB_ID(), OBJECT_ID('MG_Strategic_Plan_MeasureGroup_default_partition'),
NULL, NULL, NULL) AS a
JOIN sys.indexes AS b ON a.object_id = b.object_id AND a.index_id = b.index_id

在MS提供文件說 avg_fragmentation_in_percent 不能超過30
超過表示太分散囉
要重註

重註語法

ALTER INDEX [PK_TableName]
ON dbo.[TableName]
REBUILD WITH (ONLINE = ON);


我是這樣弄的
再重新檢查一次
發現降下來或是變成0了
成功 ^_^

參考網站

沒有留言:

張貼留言