判断是否存在,存在则先删除。否则直接备份
if object_id('p_dbbak') is not null drop proc p_dbbak
go
create proc p_dbbak
@db varchar(15), -- 要备份的 database
@bak_name varchar(110) -- bak路径+文件名
as
declare @result int,@delstr varchar(100)
exec xp_fileexist @bak_name, @result output
if @result=1 --表文件存在,先删除
begin
set @delstr='del "'+@bak_name+'"'
exec xp_cmdshell @delstr
end
set @bak_name='backup database '+@db +' to disk='''+@bak_name+''''
exec(@bak_name)
go
exec p_dbbak 'szy','G:/SQL/szy.bak'
本文介绍了一个SQL备份过程,首先检查目标备份文件是否存在,如果存在则删除旧文件,然后执行数据库备份到指定路径。此过程通过存储过程实现自动化。
517

被折叠的 条评论
为什么被折叠?



