簡體   English   中英

收縮不適用於SQL Server數據庫中的可用空間

[英]Shrink does not work for free space in sql server database

我正在嘗試縮小具有簡單恢復模型的數據庫。它具有約10 gb的可用空間,但沒有變化。

這是我獲得可用空間並縮小評論的方式

select
a.FILEID,name,
convert(decimal(12,2),round(a.size/128.000,2)) as FILE_SIZE_MB,
convert(decimal(12,2),round(fileproperty(a.name,'SpaceUsed')/128.000,2))as [SPACE_USED_MB],
convert(decimal(12,2),round((a.size-fileproperty(a.name,'SpaceUsed'))/128.000,2))[FREE_SPACE_MB] ,
NAME = left(a.NAME,15),
FILENAME = left(a.FILENAME,30)
from
dbo.sysfiles a

這是我如何縮小文件的評論

dbcc shrinkfile(<file_name>,<space_used_mb>)

實際上,srinkfile的第二個參數是target_space,而不是'space_used_mb'。 因此,如果數據庫足夠小,以下代碼應剪切您的數據文件。

USE master
GO
dbcc shrinkfile( fileId, 250 );

同樣,您可以考慮為自己的情況使用SHRINKDATABASE(但請注意這一點!)

DBCC SHRINKDATABASE ( [SHRINKED_DB_NAME] )

相應的主題在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM