首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

数据库的表动态增多字段

2013-09-28 
数据库的表动态增加字段数据库有两个表A和B,表A有字段a,b,c,当向表A插入数据m,n,l时,表B就增加字段n当向

数据库的表动态增加字段

数据库有两个表A和B,表A有字段a,b,c,当向表A插入数据m,n,l时,表B就增加字段n;当向表A插入数据a,b,c时,表B就增加字段b···这个如何做?
[解决办法]

reate table tempA(a varchar(10),b varchar(10),c varchar(10))
go
create table tempB(a varchar(10),b varchar(10),c varchar(10))
create proc test
 (      @A varchar(10), --数据1
        @B varchar(10), --数据2
        @C varchar(10)  --数据3
 )
 as
 begin
        declare @sql varchar(200)
--插入数据到A表
    insert into tempA(a,b,c)
      select @A,@B,@C
if not exists(select name from syscolumns where id=object_id('tempB') and name=@A)
begin
--更新B表字段
    set @sql='alter table tempB add '+@A+' varchar(10)'
    exec(@sql)
end
if not exists(select name from syscolumns where id=object_id('tempB') and name=@B)
begin
--更新B表字段
set @sql='alter table tempB add '+@B+' varchar(10)'
    exec(@sql)
end
if not exists(select name from syscolumns where id=object_id('tempB') and name=@C)
begin
--更新B表字段
set @sql='alter table tempB add '+@C+' varchar(10)'
    exec(@sql)
end
end

热点排行