批量替换数据库所有表中的内容

写个东东用来搞定数据库中的恶意脚本代码
select 
'update ['+s.name + '] set ['+c.name+']=' +'replace(['+c.name+'],''小白'','''')' 
from sysobjects s,syscolumns c,systypes t
where s.type='u' and s.id=c.id
AND OBJECTPROPERTY(s.id,N'IsUserTable')=1
AND c.xusertype=t.xusertype
AND t.name IN('varchar','nvarchar','char','nchar')
union
select 
'update ['+s.name + '] set ['+c.name+']=' +'replace(Cast(['+c.name+'] as varchar(8000)),''小白'','''')' 
from sysobjects s,syscolumns c,systypes t 
where s.type='u' and s.id=c.id
AND OBJECTPROPERTY(s.id,N'IsUserTable')=1 
AND c.xusertype=t.xusertype 
AND t.name IN('text','ntext')

posted on 2009-08-06 10:42  imbob  阅读(568)  评论(3编辑  收藏  举报

导航