SQL Express自动备份
--第一步
--在master库中建立一个备份数据库的存储过程.
USE master
GO
CREATE PROC p
@db_name sysname, --数据库名
@bk_path NVARCHAR(1024) --备份文件的路径
AS
IF ISNULL(@db_name,'')=''
SET @db_name=db_name() ;
DECLARE @dt VARCHAR(50) ;
SET @dt=@db_name+'_'+CONVERT(VARCHAR(8) , GETDATE() ,112)+'_';
SET @dt=@dt+REPLACE(CONVERT(VARCHAR(10) ,GETDATE() ,108),':','')
IF RIGHT(@bk_path,1)<>'/'
SET @bk_path=@bk_path+'/';
EXEC ('BACKUP DATABASE ['+@db_name+'] TO DISK='''+@bk_path+@dt+'.bak'' WITH FORMAT');
GO
--第二步
--在某个文件夹里建两个txt文件 --如D:/batComand.txt 跟D:/BackupDatabase.txt
--然后batCommand.txt文件内容如下:
sqlcmd -Smyfend/liangck -E -iG:/BackupDatabase.sql
然后保存.将扩展名改为.bat
注:这里的-S是 服务器名/实例名 -E 是集成安全性
然后BackupDatabase.txt文件内容如下:
USE master
GO
EXEC p '要备份的数据库名','G:/Backup/'
然后保存,将扩展名改为.sql
--第三步
新建任务计划.然后在选择执行哪个任务的时候..单击浏览..选择D:/batCommand.bat
设置每天执行..即可.
备份时的文件名是 : 数据库名_日期_时间.bak