Gor*_*yII 6 sql sql-server sql-server-2005
我希望能够找出我的数据库文件中剩余多少空间,以便我可以知道何时增加空间,以便在应用程序运行困难时不会这样做.
我希望能够编写脚本,以便我可以定期在多个数据库中运行它.
我有SQL Server 2000和SQL Server 2005数据库,但我希望能够跨两者运行相同的脚本.
我可以使用Management Studio在2005数据库上手动执行此操作,但不能在2000数据库上执行此操作.
Mic*_*tta 14
试试sp_spaceused:
显示当前数据库中的表,索引视图或Service Broker队列使用的行数,保留的磁盘空间和磁盘空间,或显示整个数据库保留和使用的磁盘空间.
我相信这存在于SQL Server 2000中,但我无法证明这一点.它适用于2005年和2008年.
sp_helptext如果你想把它绑在一些服务器端逻辑上,你可以偷看它.
编辑:扩展我的评论如下,并感谢http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=82359的原始撰稿人,这里是一种按文件分解使用情况的方法:
select
name
, filename
, convert(decimal(12,2),round(a.size/128.000,2)) as FileSizeMB
, convert(decimal(12,2),round(fileproperty(a.name,'SpaceUsed')/128.000,2)) as SpaceUsedMB
, convert(decimal(12,2),round((a.size-fileproperty(a.name,'SpaceUsed'))/128.000,2)) as FreeSpaceMB
from dbo.sysfiles a
Run Code Online (Sandbox Code Playgroud)
Chr*_*ian -1
对我来说,sql server总是自动分配更多空间,直到硬盘已满,所以只需查询硬盘上的可用空间即可。
您使用哪些设置必须增加数据库的“空间”?
| 归档时间: |
|
| 查看次数: |
63598 次 |
| 最近记录: |