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