问题描述
表A和表B的字段名称和字段数量都是一致的,但是字段的默认顺序不一致。现在需要将A表中全部数据插入到B表中。
使用 insert into B select * from A, oracle报错”ORA-01722: 无效数字”。
只能使用 insert into B(col1, col2,col3…) select col1, col2,col3… from A。但是表A有80多个字段,手工拼串的话太麻烦了,有什么简便点的sql吗?
这个是语法标准,没啥简化的方法。
再说,80多个字段,又不需要一个个的人工输入,从数据库的表定义导出后整理成sql语句,不算麻烦吧。
把字段顺序改成一致呗,一般不影响你的程序,然后,碰上你这种情况就方便太多了
insert into table1 select * from table2 就好了
正文完