fg5825
2015-06-13 05:22
采纳率: 0%
浏览 3.1k

mybatis+mysql 一表主键自增, 插入数据,怎么返回主键

mybatis+mysql 一表主键自增, 插入数据,怎么返回主键。很多人说的都是返回了插入的行数

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • Bellee_Arvin 2015-06-13 05:48

    在标签内 使用

    SELECT LAST_INSERT_ID()

    SELECT LAST_INSERT_ID():得到刚insert进去记录的主键值,只适用与自增主键

    打赏 评论
  • 仲渊 2015-06-13 06:05
    <insert id="insert" parameterType="Person" useGeneratedKeys="true" keyProperty="id">
        insert into person(name,pswd) values(#{name},#{pswd})
    </insert>
        然后用getId()获取主键
    
    打赏 评论
  • 仲渊 2015-06-13 06:05
    <insert id="insert" parameterType="Person" useGeneratedKeys="true" keyProperty="id">
        insert into person(name,pswd) values(#{name},#{pswd})
    </insert>
        然后用getId()获取主键
    
    打赏 评论
  • 帘卷西风 2015-06-13 09:52

    其实使用SELECT LAST_INSERT_ID()也不一定对,因为如果是多个服务同时访问数据库,同时插入的时候,
    SELECT LAST_INSERT_ID()返回的值也是错的,所以最好是使用存储过程的方式,或者在插入前生成
    唯一id(guid)的方式来插入会更安全。

    打赏 评论
  • beaconD 2015-06-14 04:06

    selectkey 有一个参数order=before

    打赏 评论

相关推荐 更多相似问题