当前位置: 代码迷 >> Java Web开发 >> Mysql怎么返回批量插入后的ID
  详细解决方案

Mysql怎么返回批量插入后的ID

热度:216   发布时间:2016-04-17 00:29:00.0
Mysql如何返回批量插入后的ID?
JDBC版本:mysql-connector-java-5.1.18
当批量插入多条记录后,怎么把这些记录自动递增的ID返回?

只插入一条记录的时候,可以用pstmt.getGeneratedKeys();返回ID,但是批量插入就没有返回了。

为什么?怎样才能?

------解决方案--------------------
XML code
    <insert id="insert-stragegy" parameterClass="stragegy">        insert into t_config(                config_name                config_desc                )         values (                #name#,                #desc#                )        <selectKey resultClass="int" keyProperty="id">            select @@IDENTITY as id         </selectKey>    </insert>
------解决方案--------------------
如果你一条的时候都可以,那么你在insert的时候就不要用批量处理,用循环不就行了。每次取得每次的放起来。
------解决方案--------------------
探讨
引用:

用个存储过程返回最后一个ID就OK了


如果多人同时插入也可以吗?
具体怎样做?

------解决方案--------------------
个人觉得
1. 并发的话:至少也要并发达到500【单次500以上】吧。。。
2. 大数据量的话,至少也要达到3000及以上【非并发。可流控处理,1000-3000条数据flash一次。。不然容易引起IO问题】。。。
  相关解决方案