我的代码如下"
select * into tbltemp
from table1 where ID='12345'
update tbltemp set ID='54321'where ID='12345'
insert into table1
select * from tbltemp where ID='54321'
drop table tbltemp
执行插入查询时,我收到错误提示'插入错误:列名或提供的值数与表定义不匹配。'
我想知道如何处理这个问题?
我的table1有50列,有三个计算列。
感谢您的建议!
答案 0 :(得分:0)
table1
和tbltemp
必须按列数匹配。如果列数不匹配,则必须明确命名列不要使用select {插入的*
符号。
答案 1 :(得分:0)
我刚刚意识到,当我计算列时,查询效果不佳。 所以我在复制一个新列之前删除计算列,然后插入select *,然后再添加计算列,这样我就可以节省写入50个字段的时间。
答案 2 :(得分:0)
您无法插入计算列。您需要在select和in value()语句中选择特定字段。没有选择*