SQL server中如何批量添加列名?
在我的数据库中的fileinfo表格中,我想给id从167-177的表格中添加一个相同的列,如图字段名称extdocument,vachar(50)表中原来没有这个列(e...
在我的数据库中的fileinfo表格中,我想给id从167-177的表格中添加一个相同的列,如图
字段名称extdocument,vachar(50) 表中原来没有这个列(extdocument),添加之后,效果是这样的就可以。
本人没研究过SQL server 希望各位大神讲解越详细越好。 展开
字段名称extdocument,vachar(50) 表中原来没有这个列(extdocument),添加之后,效果是这样的就可以。
本人没研究过SQL server 希望各位大神讲解越详细越好。 展开
3个回答
展开全部
循环加
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
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
展开全部
利用数据的系统表,例如,sys_开头的,你就能实现批量更改了,但是需要权限比较大
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
--修改Sql Server表结构时,常用到Alter语句
-- 向表中添加字段
Alter table [表名] add [列名] 类型
alter table fileinfo add extdocument varchar(50)
追问
不能实现在ID(167-177)添加这个字段吗? 上面添加之后所有表格都添加这个列了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询