之前用mysql都是:insert into table(id,name) values('1','小明')这样的形式批量插入

对于mybatis的配置大概就是:

这样形式,oracle插入更新时好像必须得指定后面的jdbcType否则直接报错 !

最近用oracle发现会报这样错:

因为oracle批量插入居然不是mysql那样的写法。。。

insert all into A01_3(ID) values('11') into A01_3(ID) values('22') SELECT 1 FROM DUAL

后面那个select 1 from dual 还必须有。

所以myabtis应该这样配置:

<insert id="insertA013List" parameterType="com.gw.oydCloud.GHR.dao.model.A013">insert all<foreach collection="list" item="item" index="index" separator=" ">into A01_3(ID, A01_ID, A01_301,A01_302, A01_303, A01_304,A01_305, R_STATE, A_STATE, CREATETIME, OPERATORS) values(#{item.id,jdbcType=VARCHAR},#{item.a01Id,jdbcType=VARCHAR},#{item.a01301,jdbcType=TIMESTAMP},#{item.a01302,jdbcType=VARCHAR},#{item.a01303,jdbcType=VARCHAR},#{item.a01304,jdbcType=VARCHAR},#{item.a01305,jdbcType=VARCHAR},#{item.rState,jdbcType=DECIMAL},#{item.aState,jdbcType=DECIMAL},#{item.createtime,jdbcType=TIMESTAMP},#{item.operators,jdbcType=VARCHAR})</foreach>SELECT 1 FROM DUAL</insert>

ps:以后面试时再问oracle和mysql区别,可以说:oracle真的是比较麻烦。。。除了一些常见的函数不一样,安全性比较高,语句比较谨慎,默认隔离等级较高,比如pl/sql里默认不提交事务,Navicat链接需要提供oracle的dll校验文件,连批量插入和更新也不一样,和mysql比oracle需要更多地语句更加谨慎,myabtis里也需要指定每列的类型。

Oracle数据库批量插入的问题相关推荐

  1. mybatis操作Oracle数据库批量插入与更新、运行注意事项、属性含义

    一.项目需求 针对将近300万用户的用电数据进行统计分析,将结果更新保存Oracle数据库.我需要往一个表里面插入数据,数据量总计在500万条左右.一条一条插入的话非常慢,2万条数据近20分钟,后面就 ...

  2. Oracle数据库mybatis 插入空值时报错(with JdbcType OTHER)

    Oracle数据库mybatis 插入空值时报错(with JdbcType OTHER)的两种解决方案 在使用Mybatis 3 时,发现了这个问题,当插入数据时,如果有一个字段为空值时,系统会报异 ...

  3. 往Oracel数据库批量插入数据

    往Oracel数据库批量插入数据到目前为止,据我所知,有两种: 第一种,在cmd进入imp命令所在的目录,然后使用imp命令,这种方式批量导入数据速度很快,导入过程会有进程提示,如遇错误,也会告知,如 ...

  4. oracle中如何加字母,Oracle数据库之oracle数据库表插入数据的时候如何产生一个字母+数字...

    本文主要向大家介绍了Oracle数据库之oracle数据库表插入数据的时候如何产生一个字母+数字,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助. Oracle 语句中" ...

  5. oracle数据库插入多表,在Oracle数据库中插入嵌套表

    我是PL/SQL数据库的新学习者,这是一种给apex.oracle.com上的数据库应用指定序列的练习.然后我创建了表格,但是当填充与插入的代码如下所示,应用赋予错误,表你不介意,我需要你的帮助在Or ...

  6. 数据库批量插入和存在的问题

    不同数据库批量插入方式效率也迥异,使用不同数据批量插入方式也存在一些需要注意.容易引起错误的点. 用于实验的数据和表 create DATABASE if exists batch_insert_pe ...

  7. 如何向Oracle数据库中插入带有特殊符号“”的数据

    今天在向Oracle数据库中插入数据的时候遇到了下面这个错误: 经过了一番排查之后,发现弹出这个对话框的原因是我插入的数据中有"&"这个符号, 因为要插入数据的表中有url ...

  8. Oracle数据库中插入日期型数据

    如果插入Oracle的当前系统时间可以用 SYSDATE INSERT INTO FLOOR VALUES ( SYSDATE ) ; 往Oracle数据库中插入日期型数据(to_date的用法) 今 ...

  9. Jmeter向数据库批量插入数据

    Jmeter向数据库批量插入数据 下面介绍一下Jmeter向mysql数据库中插入数据的入门操作 1.新建一个线程组,这是必经步骤: 在测试计划上右键–>添加–>Theaders(User ...

  10. oracle+mybatis批量插入数据

    1.Oracle批量操作 我的表结构是 1.1批量插入 1.1.1主键不使用序列 insert into students(sid,sname,ssal,ssex) select 9,'张三',300 ...

最新文章

  1. 被嫌弃的贝叶斯派的逆袭
  2. HDU 4857 Couple doubi(找循环节)
  3. 云路由 vyatta 体验(四)web代理
  4. 智能DNS解析+JBOSS集群(一)
  5. 【题解】弃疗Nim (2019,5.23)
  6. 如何快速完成企业应用IPv6改造
  7. 中矿新生赛 H 璐神看岛屿【BFS/DFS求联通块/连通块区域在边界则此连通块无效】...
  8. 漫谈边缘计算(三):5G的好拍档
  9. rhcsa第二天笔记
  10. mic in、line inline out、speaker out、headphone out 区别
  11. 浏览器渲染原理及性能优化
  12. 数据库——数据库的备份和还原
  13. 安装python时系统找不到指定的路径_系统找不到指定的路径【操作步骤】
  14. DBeaver改成英语
  15. 电子厂计算机常用英语,电子厂常用英语
  16. oracle计算sql运行时间,如何计算正在运行的SQL已经执行的时间?
  17. [墨者学院] 日志文件分析溯源(脱裤的IP地址)
  18. 如何下载IBM服务器驱动
  19. Java面试——架构设计与分布式
  20. 期货的操作方法(期货的操作方法包括)

热门文章

  1. xamarin android 设备,【Xamarin.Android】在Visual Studio中增强设备日志记录
  2. linux 防火墙安装在哪,Linux下Shorewall防火墙安装和配置
  3. 计算机信息与自然科学,郑旭飞 - 计算机与信息科学学院 - Powered by 西南大学
  4. 翻译: Keras 标准化:TensorFlow 2.0 中高级 API 指南
  5. Maximum Score After Splitting a String
  6. MySQL基本知识笔记
  7. 取整运算⌊a⌋, ⌈a⌉的一些数学理论的总结
  8. 利用Outlook应用程序接口执行Shellcode
  9. php语言 电商网站,如何做多国家,多语言电商网站的设计
  10. java生成mib文件_SNMP之MIB文件创建