获取插入行的字段值

时间:2014-12-28 13:09:34

标签: mysql sql function primary-key return-value

我想编写一个函数,该函数返回它插入的行的列值(在本例中为自动递增的主键)。

基本上,我想插入一些新数据,生成一个新的主键,然后获取该键。我可以简单地查找表中最高的主键,但是其他人也可能正在运行该函数,我可以返回错误的键,对吗?

谈判这个问题最简单的方法是什么?

1 个答案:

答案 0 :(得分:2)

正如评论中所指出的,来自MySQL documentation

mysql> SELECT LAST_INSERT_ID();
    -> 195

LAST_INSERT_ID()函数不受SELECT MAX(id)之类的竞争条件的影响,因为它在MySQL内维护,特定于您的连接。它返回为您的最后一次插入而生成的ID,而不是 anybody的最后一次插入。