1.查询条件是否有记录存在;
2、用Replace还会产生副作用,会替换其他字符。
set mdbh=left(mdbh,len(mdbh)-1) + '1'

解决方案 »

  1.   

    查询条件存在
    而且我执行完update语句后
    也提示相应数目的记录得到修改
    但是再查就是没变
    我也考虑会不会替换其它字符
    找了个只有几条记录的表试验了一下,不加任何条件进行替换
    发现也没有替换任何其它字符
      

  2.   

    update a set mdbh=left(mdbh,len(mdbh)-1)+'1' where substring(mdbh,2,2)='13' and left(rkrq,1)='2'
    你Replace的第二个参数用错了
      

  3.   

    信息收到!
    以下理解一下:
    declare @a varchar(20)
    set @a='abcdef'
    select replace(@a,right(@a,1),'1')--结果:abcde1set @a='afafaf'
    select replace(@a,right(@a,1),'1')--结果:a1a1a1declare @b char(20)
    set @b='abcdef'
    select replace(@b,right(@b,1),'1')--结果:abcdefselect replace(@b,right(rtrim(@b),1),'1')
    --结果:abcde1所以估计你的字段类型是CHAR 加一个RTRIM就行了