SQLServer过滤文件名特殊字符(利用SQLServer修改文件物理地址名称)

本文介绍如何使用SQLServer的内置函数和xp_cmdshell扩展存储过程,来过滤并修改文件的物理路径中包含的特殊字符,通过dbo.GetDirectoryPath方法获取文件目录,实现对文件名的安全操作。
摘要由CSDN通过智能技术生成
declare @cmd nvarchar(2000)
    declare @messageid nvarchar(200)
    declare @serialid nvarchar(200)
    declare @oldFileName nvarchar(500)
    declare @fileName nvarchar(500) 
    declare @filePath nvarchar(4000)
    declare @oldfilePath nvarchar(4000)  --将路径D:改成D$
    declare @newFilePath nvarchar(4000)
    declare ccur cursor for select d.MessageId,m.serialid,m.AttachmentName,m.AttachmentPath from d 
			left join r on d.MessageID=r.MessageID 
			left  join DataAttachment m on m.MessageID=d.MessageID 
		where  d.messageid='0.abe3b3d58161ccb3de7ab63754bb3f15'  --通过数据库查找所需要的附件
	             open ccur
	             fetch ccur into @messageid,@serialid,@fileName,@filePath
	             while @@fetch_status=0
                 begin
                    --判断附件文件名中是否含有特殊字符 
                    if CHARINDEX('+',@filename)>0 or CHARINDEX('$',@fil
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值