Mybatis批量增加,删除,更新Oracle
来源:互联网 发布:淘宝开店需要什么条件 编辑:程序博客网 时间:2024/06/05 22:40
Mybatis批量增加,删除,更新Oracle
最近需要用到Mybatis批量新增oracle数据库,刚开始在网上找到的方法是都是更新mySQL的,试了一下发现不适合Oracle,后来发现正确的oracle批量新增的sql是:
<insert id="insertAttractionsBatch" parameterType="java.util.List">
insert into ATTRACTIONS (
ID, NAME, LONGITUDE, LATITUDE, UPDATE_TIME
)
<foreach collection="list" item="item" index="index" separator="union all" >
(select
#{item.id,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}, #{item.longitude,jdbcType=DECIMAL}, #{item.updateTime,jdbcType=TIMESTAMP}
from dual)
</foreach>
</insert>
需要重点注意的是sql中没有values,和<foreach>标签中的(selece ..... from dual),MySql中的sql是这样的:
新增:
<insert id="insertAttractionsBatch" parameterType="java.util.List">
insert into ATTRACTIONS (
ID, NAME, LONGITUDE, LATITUDE, UPDATE_TIME
)
<foreach collection="list" item="item" index="index" separator="union all" >
#{item.id,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}, #{item.longitude,jdbcType=DECIMAL}, #{item.updateTime,jdbcType=TIMESTAMP}
</foreach>
</insert>
oracle更新不能按普通的方式,需要这样:
<update id="updateAttractionsBatch" parameterType="java.util.List">
begin
<foreach collection="list" item="item" index="index" separator=";" >
update ATTRACTIONS
<set>
<if test="item.id!=null and item.id!=''">
id = #{item.id},
</if>
<if test="item.head!=null and item.head!=''">
HEAD = #{item.head},
</if>
</set>
where id = #{item.id}
</foreach>
;end;
</update>
删除就与MySql一样了如下:
<delete id="deleteAttractions" parameterType="java.util.List">
delete from ATTRACTIONS
<where>
<foreach collection="list" index="index" item="item" open="(" separator="or" close=")">
id=#{item.id}
</foreach>
</where>
</delete>
- Mybatis批量增加,删除,更新Oracle
- Mybatis批量增加,删除,更新Oracle
- Mybatis批量增加,删除,更新Oracle
- Mybatis批量增加,删除,更新Oracle
- Mybatis批量增加,删除,更新Oracle
- Mybatis批量增加,删除,更新Oracle
- Mysql和Oracle 用Mybatis批量增加,删除,更新
- Mybatis批量增加、批量更新、批量删除和查询
- Mybatis 批量增加,批量更新
- mybatis批量更新(oracle)
- oracle mybatis 批量更新
- mybatis----批量增加与批量删除
- mybatis----批量增加与批量删除
- mybatis 批量增加、删除、修改、查询
- mybatis+oracle批量插入,批量更新
- mybatis批量增加(oracle,mysql)
- mybatis(mysql)批量插入 更新 删除
- MyBatis中批量插入、删除、更新
- 使用Python命令在Linux系统之间传输文件
- stackexchange
- 平面排版时,突出中文美感的几种方法一
- web上用Activex控件开发步骤(MFC)
- php操作memcache的使用测试总结
- Mybatis批量增加,删除,更新Oracle
- 报表需要的
- ssh连接虚拟机内的ubuntu
- Matlab并行(持续更新)
- OpenSSL 生成RSA密钥对
- Java垃圾回收器[转,补充]
- 本博客已经关闭,请关注爪哇小汉的“51CTO技术博客”和“博客园”博客!
- OSCache入门配置
- 【POJ1065】Wooden Sticks Dilworth定理(偏序集定理2)