我正在尝试缩小具有简单恢复模型的数据库。它有大约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>)
答案 0 :(得分:0)
实际上,shrinkfile的第二个参数是target_space,而不是&#39; space_used_mb&#39;。 因此,如果db足够小,以下代码应该删除您的数据文件。
USE master
GO
dbcc shrinkfile( fileId, 250 );
另外,您可以考虑使用SHRINKDATABASE(但要小心!)
DBCC SHRINKDATABASE ( [SHRINKED_DB_NAME] )