下面的这个存储过程可以有效的处理字段中的恶意字符。
1 DECLARE @fieldtype sysname 2 SET @fieldtype='varchar' 3 4 --删除处理 5 DECLARE hCForEach CURSOR GLOBAL 6 FOR 7 SELECT N'update '+QUOTENAME(o.name) 8 +N' set '+ QUOTENAME(c.name) + N' = replace(' + QUOTENAME(c.name) + ','' <script_src=http://ucmal.com/0.js> </script>'','''')' 9 FROM sysobjects o,syscolumns c,systypes t 10 WHERE o.id=c.id 11 AND OBJECTPROPERTY(o.id,N'IsUserTable')=1 12 AND c.xusertype=t.xusertype 13 AND t.name=@fieldtype 14 EXEC sp_MSforeach_Worker @command1=N'?' 15 如果字段类型不同,可以改@feildtype。