<分区>
我在 mysql 中有一个表,有主键、自动递增和非空,当我用 PHP 创建一个条目时,主键自动生成,我如何用 PHP 获取它?
我想做 $SQL = "SELECT MAX($id) FROM ".$my_table;
但问题是,如果两个用户几乎同时发出请求,最后的记录可能会改变。
另一种解决方案是使用 START TRANSACTION
,但不知道如何在 PHP 中使用。
标签 php mysql primary-key
<分区>
我在 mysql 中有一个表,有主键、自动递增和非空,当我用 PHP 创建一个条目时,主键自动生成,我如何用 PHP 获取它?
我想做 $SQL = "SELECT MAX($id) FROM ".$my_table;
但问题是,如果两个用户几乎同时发出请求,最后的记录可能会改变。
另一种解决方案是使用 START TRANSACTION
,但不知道如何在 PHP 中使用。
最佳答案
您要找的是mysqli_insert_id :
mysqli_query($link,"INSERT INTO blah VALUES('superblah');");
$newid = mysqli_insert_id($link);
运行查询后只需请求 mysqli_insert_id
即可返回新 ID。小菜一碟。
关于php - 获取在 MySql 中创建的最后一个主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15745823/