2014-02-26 47 views

回答

1

對於第一個問題:

是的,它可能會影響性能。在一個表中結合使用varchar,nvarchar,sql_variant和varbinary,總大小大於8,060字節會導致將數據重新分配到另一個頁面。 儘管這會影響更新,但我不確定讀取數據是否太重要。在內部,SQL Server把一個指針指向新頁面中重新分配的數據部分,所以我猜這是非常快的操作。

由您(DBA /開發人員)來分析和預測表中這些行的百分比。如果過於頻繁,請考慮將大型列移動到單獨的表格中。 使用sys.dm_db_index_physical_stats來查明數據發生了什麼。

第二個問題:

我想你問的情況,當一些列(尤其是VARCHAR)是空的。你可以「幫助」SQL Server來節省空間使用sparse columns 另外,我建議this文章。

+0

我們做了一些測試,你是完全正確的。謝謝。 –

相關問題