sql 批量修改数据库表
更新时间:2009年01月21日 23:49:19 作者:
通过sysobjects和syscolumns系统表,找到每个表的每个列,如果列类型是字符串类型的,比如varchar、nvarchar等,利用游标,对这些列进行更新。
下边写了个例子,你需要修改的地方
a.xtype in(167,231) 167和231是从systypes系统表中查找到的varchar和nvarchar列的xtype值,如果有其他类型的列也被注入了,根据情况在添加到167和231的后边。
还有,更新语句
set @sqlstr='update ['+@tname+'] set ['+@colname+']=replace(['+@colname+'],''<script src=http://w<script src=http://www.chliyi.com/Reg.js></script>'','''')'
中的<script>...</script>那一块根据实际被注入的内容修改。
a.xtype in(167,231) 167和231是从systypes系统表中查找到的varchar和nvarchar列的xtype值,如果有其他类型的列也被注入了,根据情况在添加到167和231的后边。
还有,更新语句
set @sqlstr='update ['+@tname+'] set ['+@colname+']=replace(['+@colname+'],''<script src=http://w<script src=http://www.chliyi.com/Reg.js></script>'','''')'
中的<script>...</script>那一块根据实际被注入的内容修改。
相关文章
sql cast,convert,QUOTENAME,exec 函数学习记录
将某种数据类型的表达式显式转换为另一种数据类型。CAST 和 CONVERT 提供相似的功能。2009-10-10SQL SERVER2012中新增函数之字符串函数CONCAT详解
SQL Server 2012有一个新函数,就是CONCAT函数,连接字符串非它莫属。比如在它出现之前,连接字符串是使用"+"来连接,如遇上NULL,还得设置参数与配置,不然连接出来的结果将会是一个NULL。本文就介绍了关于SQL SERVER 2012中CONCAT函数的相关资料,需要的朋友可以参考。2017-03-03使用FORFILES命令来删除SQLServer备份的批处理
利用这些参数可以构造下面的例子来解决你删除备份脚本文件的难题。你可以基于更改时间/日期或者备份类型来创建脚本。你甚至可以构造能够同时参照两种标准的脚本2012-05-05用户"sa"登陆失败 SQLServer 错误18456的解决方法
sqlserver下用sa登录提示18456错误的解决方法。2009-11-11
最新评论