update userinfo set [name]=substring(name,1,1)+'0'+substring(name,2,len(name))
 可以吗?

解决方案 »

  1.   

    update UserInfo set [name]=stuff([name],2,0,'0')
      

  2.   

    STUFF
    删除指定长度的字符并在指定的起始点插入另一组字符。语法
    STUFF ( character_expression , start , length , character_expression ) 参数
    character_expression由字符数据组成的表达式。character_expression 可以是常量、变量,也可以是字符或二进制数据的列。start是一个整形值,指定删除和插入的开始位置。如果 start 或 length 是负数,则返回空字符串。如果 start 比第一个 character_expression 长,则返回空字符串。length是一个整数,指定要删除的字符数。如果 length 比第一个 character_expression 长,则最多删除到最后一个 character_expression 中的最后一个字符。返回类型
    如果 character_expression 是一个支持的字符数据类型,则返回字符数据。如果 character_expression 是一个支持的 binary 数据类型,则返回二进制数据。注释
    可以嵌套字符串函数。示例
    下例通过在第一个字符串 (abcdef) 中删除从第二个位置(字符 b)开始的三个字符,然后在删除的起始位置插入第二个字符串,创建并返回一个字符串。 SELECT STUFF('abcdef', 2, 3, 'ijklmn')
    GO下面是结果集:--------- 
    aijklmnef (1 row(s) affected)
      

  3.   

    update userinfo set name=stuff(name,2,0,'0')或:
    update userinfo set name=left(name,2)+'0'+substring(name,3,8000)
      

  4.   

    我的数据库是ACCESS支持STUFF函数吗?
      

  5.   

    'ACCESS不支持stuff,要用:update userinfo set name=left(name,2)+'0'+mid(name,3,8000)
      

  6.   

    '或:update userinfo set name=left(name,2)+'0'+mid(name,3)
      

  7.   

    你的name是什么类型,怎么会不支持,我的电脑上是可以的.你的ACCESS是什么版本?下面是我在ACCESS中的测试
    表中更新前的内容
    name

    bbb
    cccc'执行语句:
    update userinfo set name=left(name,2)+'0'+mid(name,3)
    后,表中的内容
    name
    阿0
    bb0b
    cc0cc
      

  8.   

    如果你用的是Access
    update UserInfo set [name]=(left([name],1) & '0'& right([name],len([name])-1))