MySQL replace()函数的使用

replace(object,search,replace)

把object中出现的search全部替换为replace。

例如:

把表table中name地段的aa替换为bb:

UPDATE table SET name=REPLACE(name,'aa','bb');

Sql Server中text或ntext字段内容替换

刚开始,UPDATE AA表SET xx字段=REPLACE(xx字段,‘要替换的’,‘特定串’),会出现错误:函数replace的参数1的数据类型ntext无效

UPDATE 表名 SET text类型字段名=REPLACE(CONVERT(varchar(8000),text类型字段名),‘要替换的字符’,‘替换成的值’);
<pre name="code" class="sql">
UPDATE 表名 SET n
text类型字段名=REPLACE(CONVERT(varchar(4000),ntext类型字段名),‘要替换的字符’,‘替换成的值’);

 

如果text/ntext超过8000/4000

declare @pos int
    declare @len int
    declare @str nvarchar(4000)
    declare @des nvarchar(4000)
    declare @count int 
   set @des ='<requested_amount+1>'--要替换成的值
   set @len=len(@des)
   set @str= '<requested_amount>'--要替换的字符
   set @count=0--统计次数.
    WHILE 1=1
   BEGIN
       select @pos=patINDEX('%'+@des+'%',propxmldata) - 1
       from 表名
       where 条件 
      IF @pos>=0
      begin
           DECLARE @ptrval binary(16)
          SELECT @ptrval = TEXTPTR(字段名) 
          from 表名
          where 条件
           UPDATETEXT 表名.字段名 @ptrval @pos @len @str
          set @count=@count+1
       end
      ELSE
         break;
   END
   select @count


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值