首頁  >  文章  >  資料庫  >  sqlserver 自动备份所有数据库的SQL

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

WBOY
WBOY原創
2016-06-07 18:00:021103瀏覽

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

代码如下:
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
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn