SQL server中如何批量添加列名?

在我的数据库中的fileinfo表格中,我想给id从167-177的表格中添加一个相同的列,如图字段名称extdocument,vachar(50)表中原来没有这个列(e... 在我的数据库中的fileinfo表格中,我想给id从167-177的表格中添加一个相同的列,如图

字段名称extdocument,vachar(50) 表中原来没有这个列(extdocument),添加之后,效果是这样的就可以。

本人没研究过SQL server 希望各位大神讲解越详细越好。
展开
 我来答
发生等将发生
推荐于2016-09-04 · TA获得超过478个赞
知道小有建树答主
回答量:653
采纳率:75%
帮助的人:324万
展开全部
循环加
declare @beg int = 1
declare @end int = 11(此变量可以根据情况获得)

select row_number over(order by id) id,filename into #fileinfo from fileinfo
where id between 167 and 177

declare @sql varchar(1000)

while(@beg <= @end)
begin
select @sql = 'alter table ' + filename + ' add [字段1] varchar(200) ' from #fileinfo
where id = @beg

exec(@sql)
--print @sql --此处可以得到语句之后全部拿到查询分析器中执行
set @beg = @beg + 1
end

MSSQL中的处理方式,不知道2000支持不,2005以上应该都支持,而且纯手打,有错误请告知,此为根据题意理解的

还有一种就是可能理解错误,你只是需要添加一个列,将167-177的数据更新为一样
那就是这样
alter table fileinfo
add [字段1] varchar(20)

update fileinfo
set [字段1] = ‘值1’
where id between 167 and 177
yueliang5836
推荐于2018-05-14 · 超过39用户采纳过TA的回答
知道小有建树答主
回答量:209
采纳率:0%
帮助的人:49.8万
展开全部
利用数据的系统表,例如,sys_开头的,你就能实现批量更改了,但是需要权限比较大
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
0808xyj
2014-12-14 · TA获得超过1891个赞
知道大有可为答主
回答量:1237
采纳率:100%
帮助的人:1074万
展开全部
--修改Sql Server表结构时,常用到Alter语句
-- 向表中添加字段
Alter table [表名] add [列名] 类型

 

alter table fileinfo add extdocument varchar(50)
追问
不能实现在ID(167-177)添加这个字段吗? 上面添加之后所有表格都添加这个列了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式