sql数据库批量修改所有表中的字段
sql数据库中,有a,b,c三个表,每个表中都有多个列,其中列的内容里面含有“hhh”字段,我想把“hhh”换成“www“,请问如何写update语句不是修改全部内容,比...
sql数据库中,有a,b,c三个表,每个表中都有多个列,其中列的内容里面含有“hhh”字段,我想把“hhh”换成“www“,请问如何写update语句
不是修改全部内容,比如说a、b、c表中不确定列中的内容是“uuuuyyyuuuu”我想把内容换成“uuuutttuuuu”,怎么样批量换啊! 展开
不是修改全部内容,比如说a、b、c表中不确定列中的内容是“uuuuyyyuuuu”我想把内容换成“uuuutttuuuu”,怎么样批量换啊! 展开
3个回答
展开全部
----先删除要处理字段的默认值约束
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
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
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用存储过程。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
update 表名 set 字段=replace(字段,'hhh','www')
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |