我用的是动网论坛,采用的sql数据库,帖子内容字段非常大,无法用replace(因为很多内容超过8000字符),因为被别人入侵,每个帖子下面都加了一段代码,请帮忙给我写个替换代码
【表名】: dv_bbs1
【需处理字段名】:body
【替换条件】:body字段中所有含有下面这段代码的<p><font face="Verdana"><a href="http://www.xdsgp.com/"><font face="楷体_GB2312" color="#ff0000" size="6"><strong>上海信达升私幕融资公司聘请高级分析师:<font color="#0000ff">杨百万</font>我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!</strong></font></a><font face="Verdana" color="#0000ff" size="6"><a href="http://www.xdsgp.com/"><strong>http://www.xdsgp.com</strong></a></font><br/></font></p>
<p><a href="http://www.xdsgp.com/"><img style="WIDTH: 776px; HEIGHT: 62px" height="77" src="http://www.xdsgp.com/gg.gif" width="768"/></a></p><br/></font></div> 
【替换结果】:上面这这些代码全部替换为 空

解决方案 »

  1.   

    其中 body 是 text 类型
      

  2.   

    不要在数据库里处理,自己写一段ASP,把数据取出来,在ASP里replace后再写回数据库.
      

  3.   


    如果这样的话,你用LEN()和DATALENGTH()看下这个列最长的长度是多少
    如果不长,可以用cast(字段 as varchar(8000))转一下再replace
      

  4.   

    http://topic.csdn.net/t/20050916/12/4274869.html
      

  5.   


    --完全自动剔除是不可能的.
    --在MSSQL 2005下你可以使用varchar(max)类型除了不受8000大小限制,和varchar基本一样
    declare @t table(id bigint,body_content varchar(max))
    insert into @t
    select 1,'<p> <font face="Verdana"> <a href="http://www.xdsgp.com/"> <font face="楷体_GB2312" color="#ff0000" size="6"> <strong>上海信达升私幕融资公司聘请高级分析师: <font color="#0000ff">杨百万 </font>我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧! </strong> </font> </a> <font face="Verdana" color="#0000ff" size="6"> <a href="http://www.xdsgp.com/"> <strong>http://www.xdsgp.com </strong> </a> </font> <br/> </font> </p> 
    <p> <a href="http://www.xdsgp.com/"> <img style="WIDTH: 776px; HEIGHT: 62px" height="77" src="http://www.xdsgp.com/gg.gif" width="768"/> </a> </p> <br/> </font> </div> '
    union all
    select 2,'<p> <font face="Verdana"> <a href="http://www.xdsgp.com/"> <font face="楷体_GB2312" color="#ff0000" size="6"> <strong>上海信达升私幕融资公司聘请高级分析师: <font color="#0000ff">杨百万 </font>我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧! </strong> </font> </a> <font face="Verdana" color="#0000ff" size="6"> <a href="http://www.xdsgp.com/"> <strong>http://www.xdsgp.com </strong> </a> </font> <br/> </font> </p> 
    <p> <a href="http://www.xdsgp.com/"> <img style="WIDTH: 776px; HEIGHT: 62px" height="77" src="http://www.xdsgp.com/gg.gif" width="768"/> </a> </p> <br/> </font> </div> '
    declare @body_content varchar(max),@i bigint,@id bigint
    declare jump2 Cursor FOR 
    select * from @t
    open jump2
    FETCH NEXT FROM jump2 INTO @id,@body_content
    WHILE @@FETCH_STATUS = 0
    Begin 
    while patindex('%[^?,^!,^.,^:,^吖-座]%',@body_content)>0 
    begin 
    set @i=patindex('%[^?,^!,^.,^:,^吖-座]%',@body_content) 
    set @body_content=stuff(@body_content,@i,1,'') 
    end 
    update @t set body_content=@body_content where id=@id
    FETCH NEXT FROM jump2 INTO @id,@body_content
    End 
    CLOSE jump2
    DEALLOCATE jump2 select id,replace(body_content,':.','') body_content from @t/*
    ------------
    1 .楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::..
    2 .楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的?式鹆α?可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::...楷体上海信达升私幕融资公司聘请高级分析师:杨百万我们是中国最有实力的一家私幕融资公司:我们拥有中国最老一代分析师.最有实力的操盘手.而且加上几万个会员融资在一起的资金力量.可以说毫不理会大盘涨跌.会员照获益.还在犹豫什么呢?赶快点击进来!让我们一起携手共建美好的家园吧!...::..
    */
    --------
      

  6.   

    我的sql 2000 呀 ,是不是有UPDATETEXT,能不能帮我改写下呀
      

  7.   

    另外我的字段是 body是ntext类型,不是text类型
      

  8.   

    ..sql 2000好像不支持varchar(max)
    到google查下吧
      

  9.   


    我用了asp 但是写入的时候一样需要update 一样提示 失败