
sql server 给表和它的存储过程同时添加列
1.原来的存储过程是这样的:假设更新目标表是table,存储过程处理最近产生的数据temp_table,最后再插入目标表:insertintotableselect*fr...
1. 原来的存储过程是这样的:
假设更新目标表是table,存储过程处理最近产生的数据temp_table,最后再插入目标表:
insert into table select * from temp_table
2. 现在我需要在目标表table中添加两个字段x和y,遇到的问题是:
如果先在table里添加字段,再到存储过程给temp_table添加字段,保存时就会提示“列名或所提供值的数目与表定义不匹配。”
如果先在存储过程中给temp_table添加字段:
alter table temp_table add x numeric(18,4)
alter table temp_table add y numeric(18,4)
这时保存是成功的。但是table里的历史数据并没有这两个字段,是不是需要手动添加?可是添加之后,再到存储过程中保存就出错了,还是“列名或所提供值的数目与表定义不匹配。”
alter table table add x numeric(18,4)
alter table table add y numeric(18,4)
问题出在哪? 展开
假设更新目标表是table,存储过程处理最近产生的数据temp_table,最后再插入目标表:
insert into table select * from temp_table
2. 现在我需要在目标表table中添加两个字段x和y,遇到的问题是:
如果先在table里添加字段,再到存储过程给temp_table添加字段,保存时就会提示“列名或所提供值的数目与表定义不匹配。”
如果先在存储过程中给temp_table添加字段:
alter table temp_table add x numeric(18,4)
alter table temp_table add y numeric(18,4)
这时保存是成功的。但是table里的历史数据并没有这两个字段,是不是需要手动添加?可是添加之后,再到存储过程中保存就出错了,还是“列名或所提供值的数目与表定义不匹配。”
alter table table add x numeric(18,4)
alter table table add y numeric(18,4)
问题出在哪? 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询