当前位置:
SQL ntext字段的替换方法
时间:2025-11-05 07:13:12 出处:IT科技阅读(143)

复制CREATE procedure [dbo].[Proc_UpdateNTextField] @TargetTable nvarchar(1000),字段 --目标表名 @TargetField nvarchar(1000), --目标字段名 @PKField nvarchar(1000), --该表主键字段名 @otxt nvarchar(1000), --需要替换的字符串 @ntxt nvarchar(1000) --替换后的香港云服务器字符串 as begin declare @SqlStr nvarchar(4000) set @SqlStr = declare @txtlen int set @SqlStr = @SqlStr + set @txtlen = len( + @otxt + ) set @SqlStr = @SqlStr + declare @pos int set @SqlStr = @SqlStr + set @pos = 0 set @SqlStr = @SqlStr + declare curs cursor local fast_forward for select set @SqlStr = @SqlStr + @PKField + , textptr( + @TargetField +) from + @TargetTable + where + @TargetField + like % + @otxt +% set @SqlStr = @SqlStr + declare @ptr binary(16) set @SqlStr = @SqlStr + declare @id char(32) set @SqlStr = @SqlStr + open curs set @SqlStr = @SqlStr + fetch next from curs into @id, @ptr set @SqlStr = @SqlStr + while @@fetch_status = 0 set @SqlStr = @SqlStr + begin set @SqlStr = @SqlStr + select @pos= patindex(% + @otxt + %,ProductDesc) from ProductTemp where ProductID=@id set @SqlStr = @SqlStr + while @pos>0 set @SqlStr = @SqlStr + begin set @SqlStr = @SqlStr + set @pos=@pos-1 set @SqlStr = @SqlStr + updatetext + @TargetTable + . +@TargetField + @ptr @pos @txtlen + @ntxt + set @SqlStr = @SqlStr + select @pos= patindex(% + @otxt + %,ProductDesc) from ProductTemp where ProductID=@id set @SqlStr = @SqlStr + end set @SqlStr = @SqlStr + fetch next from curs into @id, @ptr set @SqlStr = @SqlStr + end set @SqlStr = @SqlStr + close curs set @SqlStr = @SqlStr + deallocate curs EXECUTE sp_executesql @SqlStr end 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.WordPress模板
分享到:
温馨提示:以上内容和图片整理于网络,仅供参考,希望对您有帮助!如有侵权行为请联系删除!