当前位置: 首页 > 图文教程 > 数据库 > MSSQL > sql 批量修改数据库表

MSSQL
SQL Server 压缩日志及数据库文件大小
名词解释:带你轻松接触13个数据库术语
自定义数据库自动编号初始值和步进值
合理设置内存让数据库与其他程序共存
SQL Server 2005:数据类型最大值
数据库手边系列:SQL Server数据表信息
SQL Server讲堂:备份和恢复措施
八个有用的WordPress的SQL语句
SQL Server中链接服务器将替代远程服务器
SQLServer与服务器连接时出错的解决方案
在 SQL Server 数据库开发中的十大问题
SQLServer 游标简介与使用说明
SQLServer 存储过程简介与使用方法
数据库大战: MS SQL Server & IBM DB2
如何了解SQL的执行频率
SQL技巧:快速掌握一些异常精妙的"SQL"语句
经验:解决DB2中出现的SQL1032N错误现象
菜鸟课堂:MySQL权限的详细解答
SQL大讲堂:如何了解SQL的执行频率
扫盲大讲堂:SQL查询结果集对注入的影响及利用

MSSQL 中的 sql 批量修改数据库表


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 126 ::
收藏到网摘: n/a

通过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>那一块根据实际被注入的内容修改。