生成MSSQL Data备份的存储过程

王朝mssql·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

SET QUOTED_IDENTIFIER OFF

GO

SET ANSI_NULLS OFF

GO

ALTER PROCEDURE CPP_BackDataBase@databasename varchar(100)) AS

declare @filename varchar(100),@cmd varchar(255)

select @databasename = rtrim(@databasename)

select @filename = 'c:sqlbackup'+ rtrim(convert(varchar(10),getdate(),20))

set @cmd = 'md '+@filename

exec master.dbo.xp_cmdshell @cmd

select @filename = @filename +''+@databasename + rtrim(convert(varchar(10),getdate(),20))

select @filename = ltrim(rtrim(@filename))

select @cmd ='BACKUP DATABASE['+@databasename+'] TO DISK = N'''+@filename +'.bak'' WITH INIT , NOUNLOAD , NAME = N''' +@filename+'备份'', SKIP , STATS = 10, FORMAT '

exec (@cmd)

if(@databasename <> 'master' and @databasename <>'msdb')

begin

--backup log with truncate_only

select @filename = 'c:sqlbackup'+@databasename+'log.back'

select @cmd = ' BACKUP LOG ['+@databasename+'] TO DISK = N'''+@filename+''' WITH INIT , NOUNLOAD , NAME = N'''+@filename +'LOG Backup'', NOSKIP , STATS = 10, NOFORMAT '

exec (@cmd)

select @cmd = 'backup log ['+@databasename+'] with truncate_only'

exec (@cmd)

end

GO

SET QUOTED_IDENTIFIER OFF

GO

SET ANSI_NULLS ON

GO

http://blog.csdn.net/downmoon/archive/2007/06/05/1639398.aspx

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航