oracle批量插入报错,[数据库]Mybatis 批量插入数据 关于Oracle 批量插入报错:ORA

[数据库]Mybatis 批量插入数据 关于Oracle 批量插入报错:ORA

0 2020-08-19 08:00:06

Mybatis 批量插入数据 关于Oracle 批量插入报错:ORA-00933: SQL 命令未正确结束

问题:用mybaits 批量插入数据到Oracle 数据库的时候,

报错:ORA-00933: SQL 命令未正确结束 / ORA-00933: SQL command not properly ended ;意思就是 语法错误

原因:

oracle 批量插入与mysql 的批量插入的方式是不同的,

insert into tablename()values(),(),(); ---这个是mysql 的批量插入形式

insert all into tablename() values() into tablename() values() -------这个是Oracle批量插入形式

下面是 Mybaits:oracle数据库批量插入数据的样式://方式1: INSERT ALL INTO ainsertclob (id, blobtest) VALUES (#{item.id}, #{item.blobtest}) select 1 from dual //方式2: INSERT INTO ainsertclob (id, blobtest) SELECT #{item.id} ,#{item.blobtest} from dual // 方式3: BEGIN insert into blacklist (id, userid, deviceid, createdate, updatedate, "LEVEL") VALUES ( USER_INFO_SEQ.NEXTVAL,#{item.userId,jdbcType=INTEGER},#{item.deviceId,jdbcType=VARCHAR}, #{item.createDate,jdbcType=DATE},sysdate, #{item.level,jdbcType=INTEGER} ); COMMIT; END;

下面是Mybaits: mysql 数据库批量插入数据的例子: INSERT INTO ainsertclob (id, blobtest) VALUES (#{item.id}, #{item.blobtest})

Mybatis,oracle,ORA-00933: SQL 命令未正确结束

原因是:批量插入时,如果没有主键,一定要显式指定useGeneratedKeys为false,否则会报: SQL 命令未正确结束

转载请保留本文网址:http://www.shaoqun.com/a/464533.html

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。

oracle

0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值