当然不能清除了,它又不是空格可以这样:update 表 set 字段=replace(字段,char(0),'')

解决方案 »

  1.   

    CrazyFor(吃素的鼹鼠) 的方法我早就用过了,如果行得通的话就不用进来这里问啦
      

  2.   

    update 表 set 字段=left(字段,len(字段)-1)
      

  3.   

    还是那句话: 
    CrazyFor(吃素的鼹鼠) :的方法我早就用过了,如果行得通的话就不用进来这里问啦!要是char(0)的位置不定啊,如果是在字段里面的未知位置,你怎样去掉呢
      

  4.   

    用  replace(字段,char(0),' ')根本就无法代替
      

  5.   

    create function rechar0(@a varchar(8000))
    returns varchar(8000)
    begin
      declare @b varchar(8000)
      set @b=''
      while @a<>''
        select @b=@b+left(@a,1),@a=right(@a,len(@a)-1)
      return @b
    end
    go
    --调用:
    declare @a varchar(100)set @a='a'+char(0)select dbo.rechar0(@a)
      

  6.   

    不对
    --调用:
    declare @a varchar(100)set @a='a'+char(0)+'b'select len(@a)
    select len(dbo.rechar0(@a))
      

  7.   

    create function rechar0(@a varchar(8000))
    returns varchar(8000)
    begin
      declare @b varchar(8000)
      set @b=''
      while @a<>''
        select @b=@b+case when left(@a,1)<>char(0) then left(@a,1) else '' end,@a=right(@a,len(@a)-1)
      return @b
    end
    go
      

  8.   

    或:create function rechar0(@a varchar(8000))
    returns varchar(8000)
    begin
      declare @b varchar(8000)
      set @b=''
      while @a<>''
      begin
        select @b=@b+left(@a,1) where left(@a,1)<>char(0)
        set @a=right(@a,len(@a)-1)
      end
      return @b
    end
    go