java相关:ibatis结合oracle批量插入三种方法的测评
发布于 2020-7-2|
复制链接
分享一篇关于关于ibatis结合oracle批量插入三种方法的测评,小妖觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小妖来看看吧
第一种
```xhtml
```
这种方式是网上最常见的,但是也是问题最大的,今天把我彻底纠结了,弄了几个小时,最后发现,Oracle不支持 一个insert多个values的方式,不知道网友们被坑到了没,好像MySQL支持这种方式,所报的错误:ORA-00933:SQL命令未正确结束第二种
```xhtml
insert all
into sj_test( col1 , col2 , col3 ) values
(#test[]. col1 #, # test []. col2 #, # test []. col3 #)
select * from dual
```
这种方式,Oracle支持,其他的数据库就不知道支不支持,但是这种方式有个局限性,就是你插入的表的列数* 你插入的行数 如:我今天需要插入的表有13列字段,总共需要插入246行,在执行的时候他就报:ORA-24335 cannot support more than 1000 columns第三种方式
```java
insert into sj_test( col1 , col2 , col3 ) values select
col1 , col2 , col3
from (
select
#test[].col1# as col1 , #test []. col2# as col2, # test[].col3# as col3 from dual
)
```