使用SQL Server判断文件是否存在后再删除(详解)_MsSql

  • A+
所属分类:MSSQLSERVER


在SQL Server中可以使用系统内部存储过程xp_fileexist判断文件是否存在,如果存在再使用xp_cmdshell删除文件。xp_fileexist除了可以判断文件是否存在外,还可以判断文件夹是否存在,下面是下使用这两个的示例。


删除文件存储过程
ALTER proc [dbo].[delFile_P]
( @path nvarchar(200))
as
declare @result int
exec master.dbo.xp_fileexist @path,@result out --路径可以有空格
if @result = 1 --1存在该文件,0不存在
begin
    --如果路径有空格,在执行cmdshell前必须替换空格字符,用双引号括住
    set @path = 'del ' + replace(@path,' ','" "')
    exec master.dbo.xp_cmdshell @path
end
调用存储过程 exec MIS.dbo.delFile_P 'F:/Internet Explorer 6 绿色版/install.log'


  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: