Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

徵狀

假設您有一個表格,其中包含 Microsoft SQL Server 2008、SQL Server 2008 R2、SQL Server 2012 或 SQL Server 2014 中的大型物件(LOB)資料行。 當您使用較小的 LOB 資料更新 LOB 欄,並嘗試使用下列方法回收未使用的空間:

  • DBCC SHRINKDATABASE/DBCC SHRINKFILE

  • 變更索引重組(LOB_COMPACTION = 開啟)

在這種情況下,無法回收未使用的空間。

每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:

因應措施

若要解決此問題,請使用下列因應措施:

  • 將所有資料列匯出至新資料表,然後將列移回。 這會重組 LOB 資料並釋放未使用的空間。

  • 使用 DBCC SHRINKFILE 搭配 EMPTYFILE 選項,將所有資料移至新加入的資料檔,然後移除舊的資料檔案。 這會透過釋放未使用的空間來重組 LOB 資料。

其他相關資訊

下列範例顯示在您使用較小的 LOB 資料更新 LOB 欄之前及之後,使用 TSQL 命令 sp_spaceused 「table_name 」所未使用的空間:更新之前:

列名

留給

資料

index_size

未使用

table_name

1000

261072 KB

261056 KB

16 KB

0 KB

更新後:

列名

留給

資料

index_size

未使用

table_name

1000

261072 KB

199672 KB

16 KB

61384 KB

狀態

Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×