【发布时间】:2012-05-04 20:47:10
【问题描述】:
谁能解释一下 MySQL 函数 LAST_INSERT_ID() 的工作原理。我正在尝试获取数据库中最后插入行的 id,但每次都得到 1。
我用的是mybatis。
示例查询是:
<insert id="insertInto" parameterType="Something" timeout="0">
INSERT INTO something (something) VALUES (#{something})
<selectKey resultType="int">
SELECT LAST_INSERT_ID()
</selectKey>
</insert>
代码:
System.out.println("Id : " + id)
输出:
Id : 1
【问题讨论】:
-
你的 id 定义为
autoincrement吗? -
也可能是The id is injected in the object 的案例,就像发生在我身上的案例一样,也就是“您没有仔细阅读文档”。
标签: java mysql sql mybatis last-insert-id