当前位置: 代码迷 >> Java Web开发 >> ibatis3 获得刚插入ID有关问题
  详细解决方案

ibatis3 获得刚插入ID有关问题

热度:243   发布时间:2016-04-17 17:22:12.0
ibatis3 获得刚插入ID问题
我想用ibatis3获得刚插入数据的ID,我数据库用的是mysql,id设置成的自增,相关代码如下:
  <insert id="save" parameterType="User" useGeneratedKeys="true" keyProperty="id">
  insert into t_user(account, name, password) 
  values(#{account},#{username},#{password})
  <selectKey keyProperty="id" order="AFTER" resultType="Integer">
  select LAST_INSERT_ID()
  </selectKey>
  </insert>

为什么返回值总是1?要怎样写才能获得刚插入那条数据的id?各位大侠帮帮忙....

------解决方案--------------------
SQL code
<insert id="create" parameterClass="paper">                <![CDATA[            insert into t_test_paper(plan_id,user_id,status,use_yn,chg_user_id,chg_dt)            values(#plan_id#,#user_id#,#status#,#use_yn#,#chg_user_id#,now())        ]]>        <selectKey keyProperty="id" resultClass="int">            <![CDATA[                SELECT LAST_INSERT_ID() as id             ]]>        </selectKey>            </insert>
------解决方案--------------------
没用过ibaits

帮顶了

祝你好运
------解决方案--------------------
今天刚好测试了select LAST_INSERT_ID(),感觉不太对劲,但是网上都是用的这个,哎
------解决方案--------------------
Mysql id不是可以自动生成啊, 你不用往里插id不就可以了?
------解决方案--------------------
刚开始接触ibatis,顶起..
------解决方案--------------------
楼主还有用其他的框架么,执行这个时必需要求两个使用同一个CONNECTION,如果不是比如说第二条是一个新的CONNECTION自然结果是1了