服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Sql Server - sqlserver 自动备份所有数据库的SQL

sqlserver 自动备份所有数据库的SQL

2019-11-20 15:52MSSQL教程网 Sql Server

可自动备份除系统数据库外的所有数据库。备份文件的周期保存周期可以更改。

代码如下:


use master 
declare @DbName varchar(60) 
declare @BackSql varchar(1000) 
declare myCursor cursor for 
SELECT [name] FROM SYSDATABASES 
where [name] not in ('master','model','msdb','tempdb') 
order by [name] 
open myCursor 
fetch next from myCursor into @DbName 
while(@@FETCH_STATUS = 0) 
begin 
if datename(weekday, getdate())='星期三' --每周三覆盖上周三的 
begin 
select @BackSql='Backup DATABASE ['+@DbName+'] to disk=''E:\DbBackUp\'+@DbName+'星期三.bak'' with format' 
end 
else--每天覆盖上一天的 
begin 
select @BackSql='Backup DATABASE ['+@DbName+'] to disk=''E:\DbBackUp\'+@DbName+'AutoBack.bak'' with format' 
end 
exec(@BackSql) 
fetch next from myCursor into @DbName 
end 
close myCursor 
DEALLOCATE myCursor 

延伸 · 阅读

精彩推荐