• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    sql ntext数据类型字符替换实现代码
    复制代码 代码如下:

    ---ntext数据类型字符替换

    create table tt
    (
    sid INT IDENTITY(1,1),
    cont ntext
    )
    go

    insert into tt(cont) values(N'fd sad fdsa 涂聚文工团 缔友计算机信息技术有限公司 可能性 桔柑 ')
    go
    update tt set cont='fd sad fdsa 涂聚文工团 可能性 缔友计算机信息技术有限公司 桔柑 ' where sid=1

    --去空格
    EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
    --sp_dboption 'pubs', 'select into/bulkcopy', 'true'
    GO
    DECLARE @ptrval binary(16),@i int,@k int,@f int
    select @i=datalength(cont) from tt where sid=1
    set @k=1
    while @i>1
    begin
    select @f=CHARINDEX(SPACE(1),cont) from tt where sid=1 ---SPACE(1)
    set @f=@f-1
    SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1
    if @f>0
    UPDATETEXT tt.cont @ptrval @f 1 null
    if @k=@i
    break
    else
    set @k=@k+1
    continue
    end
    GO
    --sp_dboption 'pubs', 'select into/bulkcopy', 'false'
    EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'false'
    GO

    SELECT * FROM tt

    ---换英文字母
    EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'

    GO
    DECLARE @ptrval binary(16),@i int,@k int,@f int
    select @i=datalength(cont) from tt where sid=1
    set @k=1
    while @i>1
    begin
    select @f=CHARINDEX('sad',cont) from tt where sid=1 ---SPACE(1)
    set @f=@f-1
    SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1
    if @f>0
    UPDATETEXT tt.cont @ptrval @f 3 'ggg'
    if @k=@i
    break
    else
    set @k=@k+1
    continue
    end
    GO
    SELECT * FROM tt

    ---中文字母
    EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
    GO
    DECLARE @ptrval binary(16),@i int,@k int,@f int
    select @i=datalength(cont) from tt where sid=1
    set @k=1
    while @i>1
    begin
    select @f=CHARINDEX('涂聚文',cont) from tt where sid=1 ---SPACE(1)
    set @f=@f-1
    SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1
    if @f>0
    UPDATETEXT tt.cont @ptrval @f 6 '涂斯博'
    if @k=@i
    break
    else
    set @k=@k+1
    continue
    end
    GO
    SELECT * FROM tt


    EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
    GO
    DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int
    set @change=N'sad' --要替换的字符
    --set @len=datalength(@change)
    set @len=len(@change)
    set @newstr=N'ggg' --替换成的字符
    select @i=datalength(cont) from tt where sid=1
    set @k=1
    while @i>1
    begin
    select @f=CHARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)
    set @f=@f-1
    SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1
    if @f>0
    UPDATETEXT tt.cont @ptrval @f @len @newstr
    if @k=@i
    break
    else
    set @k=@k+1
    continue
    end
    GO
    SELECT * FROM tt



    EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
    GO
    DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int
    set @change=N'涂聚文' --要替换的字符
    --set @len=datalength(@change) --用此会出错
    set @len=len(@change)
    set @newstr=N'涂斯博' --替换成的字符
    select @i=datalength(cont) from tt where sid=1
    set @k=1
    while @i>1
    begin
    select @f=CHARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)
    set @f=@f-1
    SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1
    if @f>0
    UPDATETEXT tt.cont @ptrval @f @len @newstr
    if @k=@i
    break
    else
    set @k=@k+1
    continue
    end
    GO
    SELECT * FROM tt

    update tt set cont='fd sad fdsa 涂聚文工团 可能性 缔友计算机信息技术有限公司 桔柑 ' where sid=1
    select datalength('涂聚文')
    select len('涂聚文')
    select datalength('sad')
    select len('sad')
    select len(SPACE(1))


    EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
    DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int
    set @change=N'涂聚文' --要替换的字符
    --set @len=datalength(@change) --用此会出错
    set @len=len(@change)
    set @newstr=N'涂斯博' --替换成的字符
    select @i=datalength(cont) from tt where sid=1
    set @k=1
    while @i>1
    begin
    select @f=CHARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)
    set @f=@f-1
    SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1
    if @f>0
    UPDATETEXT tt.cont @ptrval @f @len @newstr
    if @k=@i
    break
    else
    set @k=@k+1
    continue
    end
    GO

    EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
    DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int
    set @change=N'涂聚文' --要替换的字符
    --set @len=datalength(@change) --用此会出错
    set @len=len(@change)
    set @newstr=N'涂斯博' --替换成的字符
    select @i=datalength(cont) from tt where sid=1
    set @k=1
    while @i>1
    begin
    select @f=CHARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)
    set @f=@f-1
    SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1
    if @f>0
    UPDATETEXT tt.cont @ptrval @f @len @newstr
    if @k=@i
    break
    else
    set @k=@k+1
    continue
    end
    GO
    您可能感兴趣的文章:
    • replace MYSQL字符替换函数sql语句分享(正则判断)
    • mysql查询字符串替换语句小结(数据库字符串替换)
    上一篇:sql 自定义百分比转换小数函数代码
    下一篇:SQL集合函数中case when then 使用技巧
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    sql ntext数据类型字符替换实现代码 sql,ntext,数据,类型,字符,