插入后获取mysql的最后一个插入ID

时间:2010-12-31 03:34:15

标签: mysql insert

我有这样的查询:

INSERT INTO table1 (field1,field2) VALUES ('$value1','$value2') ON DUPLICATE KEY UPDATE field1 = '$value1'

然后我想获取最后一个插入ID,如果它插入,我该怎么做?如果查询最终执行更新,我不想要最后一个插入ID。有没有办法确定它是否进行了更新或插入?

2 个答案:

答案 0 :(得分:2)

我想我应该在发布前搜索网站。基本上添加这个工作:

id=LAST_INSERT_ID(id)

关于重复更新。我在这里找到答案:

Duplicate Key Last Insert ID

答案 1 :(得分:1)

根据this MySQL Manual Page

  

如果表包含AUTO_INCREMENT   列和INSERT ... ON DUPLICATE KEY   UPDATE插入或更新一行,   LAST_INSERT_ID()函数返回   AUTO_INCREMENT值。