导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

如何将数据库中的某一列更新

1010101010 2003-12-13 01:46:46
现有一列,名为Name,字符串类型, 表名为UserInfo,如果要将所有记录的Name字段第二个个字符后添加一个'0'如何用一条Sql语句实现?
请各位帮忙。谢谢。
...全文
87 点赞 收藏 12
写回复
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
1010101010 2003-12-13
问题解决,谢谢
回复
Rotaxe 2003-12-13
如果你用的是Access
update UserInfo set [name]=(left([name],1) & '0'& right([name],len([name])-1))
回复
你的name是什么类型,怎么会不支持,我的电脑上是可以的.

你的ACCESS是什么版本?

下面是我在ACCESS中的测试
表中更新前的内容
name

bbb
cccc

'执行语句:
update userinfo set name=left(name,2)+'0'+mid(name,3)
后,表中的内容
name
阿0
bb0b
cc0cc
回复
1010101010 2003-12-13
刚才我试了,不支持。还有其他方法吗?
回复
1010101010 2003-12-13
刚才我试了,不支持。还有其他方法吗?
回复
'或:

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

update userinfo set name=left(name,2)+'0'+mid(name,3,8000)
回复
1010101010 2003-12-13
我的数据库是ACCESS支持STUFF函数吗?
回复
update userinfo set name=stuff(name,2,0,'0')

或:
update userinfo set name=left(name,2)+'0'+substring(name,3,8000)
回复
txlicenhe 2003-12-13
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)

回复
Rotaxe 2003-12-13
update UserInfo set [name]=stuff([name],2,0,'0')
回复
IntoPython 2003-12-13
update userinfo set [name]=substring(name,1,1)+'0'+substring(name,2,len(name))
可以吗?
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告