脚本自动删除bak文件

oceantang 2009-04-10 09:40:01
SQLSERVER2005数据库备份的bak文件存在磁盘的某个目录下,怎么自动删除5天前的bak文件啊
假如这个bak文件存放在D盘根目录下,现有如下bak文件
elite20090403.bak
elite20090404.bak
elite20090405.bak
elite20090406.bak
elite20090407.bak
elite20090408.bak
elite20090409.bak
elite20090410.bak
删除之后就只剩下后面5个了。各位大哥能否提供具体的方法和代码提供给小弟,谢谢各位了。



...全文
270 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
百年树人 2009-04-10
  • 打赏
  • 举报
回复
[Quote=引用楼主 oceantang 的帖子:]
SQLSERVER2005数据库备份的bak文件存在磁盘的某个目录下,怎么自动删除5天前的bak文件啊?
假如这个bak文件存放在D盘根目录下,现有如下bak文件
elite20090403.bak
elite20090404.bak
elite20090405.bak
elite20090406.bak
elite20090407.bak
elite20090408.bak
elite20090409.bak
elite20090410.bak
删除之后就只剩下后面5个了。各位大哥能否提供具体的方法和代码提供给小弟,谢谢各位了。
[/Quote]


在数据库维护计划里就可以选择根据时间来删除备份的文件,可以精确到分钟
  • 打赏
  • 举报
回复
mark
Zoezs 2009-04-10
  • 打赏
  • 举报
回复

建个Job每天跑一次
Declare @FileName varchar(200)
Declare @FileFlag varchar(8)
Declare @SQL varchar(300)
Set @FileFlag='20'+convert(char(6),getdate()-5,12)
Set @FileName='D:\elite'+@FileFlag+'.BAK'
Set @SQL='Del '+@FileName
Print @SQL
Execute Master..xp_cmdshell @SQL
Go
CeShenBeiWang 2009-04-10
  • 打赏
  • 举报
回复
帮顶!

22,222

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧