分享一个数据库备份、 定期删除脚本

2023-03-22 00:00:00 专区 订阅 付费 是一个 计算所

declare @path varchar(600)
select @path='文件路径'
declare @s nvarchar(max),@del nvarchar(max)
select  @s='',@del=''
declare @Name varchar(20)
set @Name='数据库名称'
select 
    @s=@s+
        char(13)+'backup database  '+quotename(Name)+'  to disk ='+''''+@Path+'\'+Name+'_'+convert(varchar(8),getdate(),112)+'.bak'+''''+'  with init',
    @del=@del+
        char(13)+'exec master..xp_cmdshell '+''''+' del '+@path+'\'+Name+'_'+convert(varchar(8),getdate()-7,112)+'.bak'+''''+', no_output' 

from master..sysdatabases a  where   a.Name=@Name and dbid>1 
order by dbid asc

exec (@del)
exec(@s)

相关文章