mybatis批量插入oracle
<insert id="batchInsert" parameterType="java.util.List">
INSERT INTO
TEST(
A,
B,
C,
D,
E
)
<foreach collection="list" index="index" item="item" separator="UNION ALL">
SELECT
#{item.a, jdbcType=VARCHAR} A,
#{item.b, jdbcType=VARCHAR} B,
#{item.c, jdbcType=VARCHAR} C,
#{item.d, jdbcType=VARCHAR} D,
#{item.e} E
FROM dual
</foreach>
</insert>
以上是Oracle数据库中的写法
二,MySQL数据库中的写法
<insert id="batchInsert" parameterType="java.util.List">
INSERT INTO
TEST(
A,
B,
C,
D,
E
)
<foreach collection="list" index="index" item="item" separator=",">
#{item.a, jdbcType=VARCHAR},
#{item.b, jdbcType=VARCHAR},
#{item.c, jdbcType=VARCHAR},
#{item.d, jdbcType=VARCHAR},
#{item.e}
</foreach>
</insert>
MySQL批量插入并返回所有主键的写法
<insert id="id" userGeneratedKeys="true" keyProperty="id">
输出id
for(User user : list){
user.getId();
}
*** 目前只有MySQL能实现批量插入后返回主键的操作
mybatis批量插入oracle的更多相关文章
- mybatis批量插入oracle时报错:unique constraint (table name) violated
mybatis批量插入oracle时报错:unique constraint (table name) violated,是因为插入的集合中有两条相同唯一约束的数据.
- mybatis批量插入oracle大量数据记录性能问题解决
环境: mybatis + oracle11g r2 1.使用"直接路径插入"(以下sql语句中的"/*+append_values */"),而且使用key ...
- Mybatis批量插入oracle,mysql
oracle <insert id="addUserData" parameterType="java.util.List"> INSERT IN ...
- mybatis批量插入数据到oracle
mybatis 批量插入数据到oracle报 ”java.sql.SQLException: ORA-00933: SQL 命令未正确结束“ 错误解决方法 oracle批量插入使用 insert a ...
- 解决Oracle+Mybatis批量插入报错:SQL 命令未正确结束
Mybatis批量插入需要foreach元素.foreach元素有以下主要属性: (1)item:集合中每一个元素进行迭代时的别名. (2)index:指定一个名字,用于表示在迭代过程中,每次迭代到的 ...
- oracle+mybatis批量插入踩坑记
最近在项目中需要使用oracle+mybatis批量插入数据,因为自增主键,遇到问题,现记录如下: 一.常用的两种sql写法报错 1.insert ... values ... <insert ...
- Mybatis 批量插入数据
--mybatis 批量插入数据 --1.Oracle(需要测试下是否支持MySQL) < insert id ="insertBatch" parameterType=&q ...
- 【mybatis批量插入】
mybatis批量插入操作: MySQL:1.INSERT INTO TABLE_NAME(ID,NAME)VALUES(1,'张三'),(2,'李四') 2.INS ...
- MyBatis批量插入性能及问题
1.mybatis三种批量插入方式对比 2.Mybatis与JDBC批量插入MySQL数据库性能测试及解决方案 3.Mybatis批量插入引发的血案 4.Oracle批量插入数据SQL语句太长出错
随机推荐
- (转)Python学习笔记系列——Python是一种纯粹的语言
此文出自知乎灵剑,原文传送门:https://zhuanlan.zhihu.com/p/23926957. 在摸索适合自己的语言学习方法,看到一篇好文章,转之,侵删. Python的语法范式相当多.知 ...
- HihoCoder - 1336 二维数状数组(单点更新 区间查询)
You are given an N × N matrix. At the beginning every element is 0. Write a program supporting 2 ope ...
- c模拟 页式管理页面置换算法之FIFO
写的操作系统作业.... 放上来给需要的小伙伴 需要注意的地方: 1.该算法只涉及单进程 2.只是用c模拟FIFO的思想 FIFO思想:选择在内存中存活时间最久的页面淘汰 关于该算法我的理解: 一个进 ...
- KMP算法之从懵逼到入门
写本文的目的: 1.加深自己的理解,以便自己日后复习 2.给看到此文的人一点启发 KMP算法看懂了就觉得特别简单,思路也好理解,但是看不懂之前,查各种资料看大佬的博客,都很懵逼...... 1. 算 ...
- C++反汇编代码分析–函数调用
转载:http://shitouer.cn/2010/06/method-called/ 代码如下:#include “stdlib.h” int sum(int a,int b,int m,int ...
- STL容器与拷贝构造函数
所有容器提供的都是“value语意”而非“reference语意”.容器内进行元素的安插操作时,内部实施的是拷贝操作,置于容器内.因此STL容器 的每一个元素都必须能够拷贝.---<<C+ ...
- iOS10--消息通知的基本使用
官方将通知单独放在了UserNotifications.framework,使用时需要导入框架.UserNotifications.framework主要类文件: UNCalendarNotifica ...
- python基础学习1-类相关内置函数
#!/usr/bin/env python # -*- coding:utf-8 -*- #===issubclass(class,classinfo) 检查class是否是classinfo类的子类 ...
- Gitlab+Jenkins学习之路(一)之Git基础
1.GIT基础 GIT是一个分布式版本管理系统,速度快,适合大规模,跨地区多人协同开.SVN是一个集中式版本管理系统. (1)GIT生态 GIT分布式版本管理系统 Gitlab git私库解决方 ...
- 【windows】窗口锁定状态如何关机
在锁定界面下方有一个——切换用户,点击,过一会右下角就有一个红色的圆圈,就可以关机了.