由于两张表结构在字段顺序上有不同,使用insert into A select * from B 的时候是否会有问题。
测试如下:
--创建测试表1
create table t_test_1 (id varchar2(2),comm varchar2(10));
--创建测试表2 字段顺序同表1不同
create table t_test_2 (comm varchar2(10),id varchar2(2));
--往测试表1插入测试数据
insert into t_test_1 values ('1','ssss')
--用insert into select * 往表2中插入测试(报错)
insert into t_test_2 select * from t_test_1;
--写明字段对应关系插入表2 (正常插入)
insert into t_test_2 (comm,id) select comm,id from t_test_1;
结论,当两张表字段顺序不同时是不能使用insert into select * 进行插入的,必须写明对应字段。
原文链接:https://www.f2er.com/oracle/208975.html