如果有人可以建议正确的查询来增加数据/日志文件大小,如果可用空间比当前大小增加20%,那么会不会感激?
如果可用空间低于20%,需要一些能够从当前大小的数据/日志中添加30%的SQL查询。
我有这个查询来识别当前的大小
SELECT a.NAME,
a.FILENAME,
[FILE_SIZE(MB)] = convert(decimal(12,2),
round(a.size/128.000,2)),
[SPACE_USED(MB)] = convert(decimal(12,2), round(fileproperty(a.name,'SpaceUsed')/128.000,2)),
[FREE_SPACE(MB)] = convert(decimal(12,2),
round((a.size-fileproperty(a.name,'SpaceUsed'))/128.000,2)) ,
[FREE_SPACE(%)] = convert(decimal(12,2),
(convert(decimal(12,2),round((a.size-fileproperty(a.name,'SpaceUsed'))/128.000,2)) / convert(decimal(12,2),round(a.size/128.000,2)) * 100))
FROM dbo.sysfiles a
答案 0 :(得分:0)
您可以使用内置自动增长选项轻松添加当前大小的30%
。
为什么需要执行SQL Server
工作并增加高级版本?让发动机完成这项工作。
如果您担心此类任务很慢,您可以查看Instant File Initialization。
无论如何,如果您仍然希望自己这样做,拥有当前大小,意味着您可以计算新的大小。你可以使用:
ALTER DATABASE [mydatabase] MODIFY FILE ( NAME = N'mydatabase', SIZE = ...KB );
ALTER DATABASE [mydatabase] MODIFY FILE ( NAME = N'mydatabase_log', SIZE = ...KB );