转自 http://blog.csdn.net/liangCK/archive/2008/11/16/3311933.aspx
-- 第一步
-- 在 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