使用窗口调度程序删除数据库记录

时间:2012-05-03 10:39:26

标签: database batch-file window delete-file

我使用Windows调度程序创建了一个自动备份任务,使用.bat。

来备份我的数据库

在我的备份文件夹里面有7个子文件夹(星期一,星期二,星期三......)来保存每日备份数据库。

如何删除上周的数据库并保留最新版本?例如,今天是星期四,我想删除最后一个星期四的数据库并保留今天的数据库?

这是.bat命令?

sqlcmd -S NATE-PC\SQLEXPRESS2008R2 -U user1 -P user -i C:\scheduled\schedule.sql

del d:\Backup\db_backup_*.bak ?? what should I write here

以下是每天运行的SQL查询

   DECLARE @pathName NVARCHAR(512) 
SET @pathName = 'D:\Backup\db_backup\' + DATENAME(DW,GETDATE())+'\'+ Convert(varchar(8), GETDATE(), 112) + '.bak' 
BACKUP DATABASE [LEWREDB] TO  DISK = @pathName WITH NOFORMAT, NOINIT,  NAME = N'db_backup', SKIP, NOREWIND, NOUNLOAD,  STATS = 10

1 个答案:

答案 0 :(得分:0)

尝试删除命令

forfiles /p "d:\Backup" /m "db_backup_*.bak" /c "cmd /c Del @path " /d -7

Here this the description