请教高手,关于updatetext修改表的用法。 有一个表T(ID,Context),其中Context为text类型,我想把里面的‘abccs'全部替换成‘11011',请问怎么实现。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 --如果长度小于8000update tb set Context=replace(cast(Context as varchar),'abccs','11011') --如果长度大于8000,用如下语句 Declare @s_str varchar(8000), @d_str varchar(8000) Select @s_str='abccs' , --要替换的字符串 @d_str='11011' --替换成的字符串 Declare @p varbinary(16),@postion int,@rplen int Select @p=textptr(Context),@rplen=len(@s_str),@postion=charindex(@s_str,Context)-1 from tb while @postion>0 begin updatetext tb.Context @p @postion @rplen @d_str select @postion=charindex(@s_str,Context)-1 from tb end --如果长度大于8000,用如下语句 Declare @s_str varchar(8000), @d_str varchar(8000) Select @s_str='abccs' , --要替换的字符串 @d_str='11011' --替换成的字符串 Declare @p varbinary(16),@postion int,@rplen int Select @p=textptr(Context),@rplen=len(@s_str),@postion=charindex(@s_str,Context)-1 from tb while @postion>0 begin updatetext tb.Context @p @postion @rplen @d_str select @postion=charindex(@s_str,Context)-1 from tb end===================================================================这段不执行,但是没有语法错误,不知道原因,请指教. Declare @s_str varchar(8000), @d_str varchar(8000) Select @s_str='abccs' , --要替换的字符串 @d_str='11011' --替换成的字符串 Declare @p varbinary(16),@postion int,@rplen int Select @p=textptr(Context),@rplen=len(@s_str),@postion=charindex(@s_str,Context)-1 from tb while @postion >= 0 -------------------------------修改地方------ begin updatetext tb.Context @p @postion @rplen @d_str select @postion=charindex(@s_str,Context)-1 from tb end sql做连续减法怎么办? 请教怎样做内循环查询的问题 求助 多表修改 求助!关于mysql服务器不能启动的新问题 怎样把varchar转换为numeric? 帮我一下,我建立的发布怎么会不行的呢? 邹建大哥:[Unable to read local eventlog reason: 事件日志文件已在读取间更改.] 帮帮我:) SQL如何把查询出来的多个表创建成一个表 求解一个存储过程中group by用法! 输出两个参数的存储过程如何调用这两个参数呢??
update tb set Context=replace(cast(Context as varchar),'abccs','11011')
Select @s_str='abccs' , --要替换的字符串
@d_str='11011' --替换成的字符串 Declare @p varbinary(16),@postion int,@rplen int
Select @p=textptr(Context),@rplen=len(@s_str),@postion=charindex(@s_str,Context)-1 from tb
while @postion>0
begin
updatetext tb.Context @p @postion @rplen @d_str
select @postion=charindex(@s_str,Context)-1 from tb
end
Select @s_str='abccs' , --要替换的字符串
@d_str='11011' --替换成的字符串 Declare @p varbinary(16),@postion int,@rplen int
Select @p=textptr(Context),@rplen=len(@s_str),@postion=charindex(@s_str,Context)-1 from tb
while @postion>0
begin
updatetext tb.Context @p @postion @rplen @d_str
select @postion=charindex(@s_str,Context)-1 from tb
end===================================================================
这段不执行,但是没有语法错误,不知道原因,请指教.
Select @s_str='abccs' , --要替换的字符串
@d_str='11011' --替换成的字符串 Declare @p varbinary(16),@postion int,@rplen int
Select @p=textptr(Context),@rplen=len(@s_str),@postion=charindex(@s_str,Context)-1 from tb
while @postion >= 0 -------------------------------修改地方------
begin
updatetext tb.Context @p @postion @rplen @d_str
select @postion=charindex(@s_str,Context)-1 from tb
end