除MSSQL数据库text字段中恶意脚本的删方法


方法很简单:text字段不能使用Replace,所以使用patindex

复制代码 代码如下:

-select * from Product where P_Intro like '%<script src="http://my.stsw518.cn/a002/1.js" src="http://my.stsw518.cn/a002/1.js"></script>%'
--text字段的替换处理示例--全表替换
-- select datalength(P_Intro),* from Product
--邀月 整理
--定义替换的字符串
declare @s_str nvarchar(4000),@d_str nvarchar(4000)
select @s_str='<script src="http://my.stsw518.cn/a002/1.js" src="http://my.stsw518.cn/a002/1.js"></script>' --要替换的字符串
,@d_str='' --替换成的字符串


--因为只能用patindex,所以对于搜索字符串做处理
set @s_str='%'+@s_str+'%'

--定义游标,循环处理数据
declare @id bigint
declare #tb cursor for select P_ID from Product where P_Intro like '%<script src="http://my.stsw518.cn/a002/1.js" src="http://my.stsw518.cn/a002/1.js"></script>%'
-- where P_ID=300727 ----where P_Intro like '%<script src="http://my.stsw518.cn/a002/1.js" src="http://my.stsw518.cn/a002/1.js"></script>%'
open #tb
fetch next from #tb into @id
while @@fetch_status=0
begin
--字符串替换处理
declare @p varbinary(16)
,@p1 int,@p2 int
,@rplen int,@step int,@len int

select @p=textptr(P_Intro)
,@rplen=len(@s_str)-2
,@step=len(@d_str)
,@p1=patindex(@s_str,P_Intro)
,@len=datalength(P_Intro)
,@p2=0
from Product
where P_id=@id

while @p1>0
begin
set @p2=@p1+@p2-1
updatetext Product.P_Intro @p @p2 @rplen @d_str
select @p2=@p2+1,@p1=patindex(@s_str,substring(P_Intro,@p2+1,@len))
from Product where P_ID=@id
end
fetch next from #tb into @id
end
close #tb
deallocate #tb

--显示结果
---- select datalength(P_Intro),* from Product



相关阅读:
Mysql(MyISAM)的读写互斥锁问题的解决方法
Apache认证设置(windows2000篇)
CSS3教程(4):网页边框和网页文字阴影
MSSQL数据类型及长度限制详细说明
SQL注入攻击第三波浪潮袭来
MYSQL初学者扫盲
让IE5.5+也支持position:fixed;
在windows2003下设置IIS及DNS
window.open()弹出居中的窗口
CSS 伪类实现的鼠标滑动图片链接
javascript实现的动态文字变换
通过服务器端特性配置加强php的安全
js活用事件触发对象动作
SQL Server优化篇:过滤条件设定提高索引效率
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 石门水库 真实伤感爱情故事四则 2016身份证保证书范文 饮水集 我是一个小花匠100字 小学三年级作文300字:我家的八哥 一个男人写给未来妻子的信 《我一直在等你》 学习四中全会依法治国心得体会 下一站,幸福作文1100字 我——小鲨鱼的遭遇作文600字 大家的凝聚力 野蛮游戏作文600字 心中的春天作文650字 雨作文1400字 葫芦苏台印象 监管工作不力检讨书范文1000字 我学会了做饭作文开头 写生课250字 穿越遇见王子(4)作文800字 鼻涕虫 弟弟回家作文700字 让我怦然心动的一首歌 2006学年度第一学期二年(1)班班主任工作计划 建设局办公室财务主管述职报告 待到铁杵磨成针 夏天的魔王 人生我们每走一步,都是一个新的起点 我爱“不死鸟”作文300字 学习礼仪的收获 明月有泪 家乡的小河_三年级作文200字 假装快乐作文100字 我很喜欢秋天250字 【时光里的愫语】 小学生:我们班的秋游活动 下飞行棋作文100字 《超强台风》读后感作文750字 2015年最新祭祀致词 人事考试的安全性与公正性的思考 过年回家,有6句话一定要对妈妈说 等待、那一年的回暖季 学校啊 你虽然得到了我的肉体 确得不到我的心 难得的感性 竹林七贤(三) 祝福作文150字 有关于毕业 煤矿采掘人员个人工作总结 我对你,只有放弃,没有忘记 践行科学发展观加强公共气象服务能力水平 于丹论语心得之六:理想之道(4)

Copyright © 2016 phpStudy |