今天需要重装系统,数据库太多,就找了一个全部备份数据库的sql方法,留在此做标记。
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:\DataBase\‘+@DbName+‘星期三.bak‘‘ with format‘ end else--每天覆盖上一天的 begin select @BackSql=‘Backup DATABASE [‘+@DbName+‘] to disk=‘‘E:\DataBase\‘+@DbName+‘AutoBack.bak‘‘ with format‘ end exec(@BackSql) fetch next from myCursor into @DbName end close myCursor DEALLOCATE myCursor