sql数据库批量修改所有表中的字段

sql数据库中,有a,b,c三个表,每个表中都有多个列,其中列的内容里面含有“hhh”字段,我想把“hhh”换成“www“,请问如何写update语句不是修改全部内容,比... sql数据库中,有a,b,c三个表,每个表中都有多个列,其中列的内容里面含有“hhh”字段,我想把“hhh”换成“www“,请问如何写update语句
不是修改全部内容,比如说a、b、c表中不确定列中的内容是“uuuuyyyuuuu”我想把内容换成“uuuutttuuuu”,怎么样批量换啊!
展开
 我来答
jipiv95
2010-12-26 · TA获得超过169个赞
知道答主
回答量:263
采纳率:0%
帮助的人:227万
展开全部
----先删除要处理字段的默认值约束
declare @s varchar(8000)
set @s=''
select @s=@s+'
alter table ['+b.name+'] drop constraint ['+d.name+']'
from syscolumns a
join sysobjects b on a.id=b.id
join syscomments c on a.cdefault=c.id
join sysobjects d on c.id=d.id
where b.name='KeyWords'
and (a.name='hits')
exec(@s)

----如果要要将 hits 字段改为数字类型
alter table KeyWords alter column [hits] numeric(18,0)

----再为字段 hits 添加默认值约束
set @s='alter table KeyWords add constraint
[df__t1__hits__'+cast(newid() as varchar(36))
+'] default (0) for hits'
exec(@s)
go

--如果要改已有的数据
update KeyWords set hits=0 where 1=1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mll82
2010-12-25 · 超过26用户采纳过TA的回答
知道答主
回答量:95
采纳率:0%
帮助的人:48.7万
展开全部
使用存储过程。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shyixun
2010-12-25
知道答主
回答量:93
采纳率:0%
帮助的人:64.2万
展开全部
update 表名 set 字段=replace(字段,'hhh','www')
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式