我一个库里有好多表
但是结构都一样
表名也有规律
如下
A001
A002
A003
B001
B002
B003
然后他们里面都有几个相同的字段
比如都有 name city
我现在想删除这些字段
能同时更新这些表么?
但是结构都一样
表名也有规律
如下
A001
A002
A003
B001
B002
B003
然后他们里面都有几个相同的字段
比如都有 name city
我现在想删除这些字段
能同时更新这些表么?
declare @sql varchar(8000)
declare @i int
set @i=1
set @TName='A00'
while @i<N
begin
set @sql='alter table '+@TName+cast(@i as varchar)+' delete colum name_city
exec(@sql)
set @i=@i+1
end
写个游标逐行处理每个表
alter table tablename drop column columnname1
alter table tablename drop column columnname2
alter table tablename drop column columnname...
alter table tablename drop column columnnamen
@whereand = ' and o.name like ''[A-Z][0-9][0-9][0-9]'''exec sp_MSforeachtable @command1="alter table ? drop column city",
@whereand = ' and o.name like ''[A-Z][0-9][0-9][0-9]'''
@whereand = ' and name like ''[A-Z][0-9][0-9][0-9]'''
exec sp_MSforeachtable @command1="if exists(select 1 from syscolumns where id = object_id('?') and name = 'city') alter table ? drop column city",
@whereand = ' and name like ''[A-Z][0-9][0-9][0-9]'''