我想要为它插入的行编写一个函数,该函数返回列的值(在本例中是一个自动递增的主键)。
本质上,我想插入一些新的数据,生成一个新的主键,然后得到那个键。我可以简单地查找表中最高的主键,但也可能有人在运行该函数,而且我可能返回错误的键,对吗?
解决这个问题最简单的方法是什么?
发布于 2014-12-28 13:16:52
正如注释中指出的,来自MySQL文档
mysql> SELECT LAST_INSERT_ID();
-> 195这个LAST_INSERT_ID()函数不受SELECT MAX(id)那样的竞争条件的影响,因为它是在特定于您的连接的MySQL中维护的。它返回为最后一个插入生成的ID,而不是任何人的最后一个插入。
https://stackoverflow.com/questions/27676672
复制相似问题