Php 获取刚刚添加了mysql准备语句的记录ID
我正在使用PDO插入一条记录,并将结果保存在作为布尔值使用的Php 获取刚刚添加了mysql准备语句的记录ID,php,mysql,pdo,prepared-statement,Php,Mysql,Pdo,Prepared Statement,我正在使用PDO插入一条记录,并将结果保存在作为布尔值使用的$result中 $result = $addRecord->execute(); if ($result){ //add successful } else { //add unsuccessful } 我还想获得刚刚添加的记录id。在表中,每条记录都有一个名为id的auto_incremented字段。我试过这么做 $new_id = $result['id']; 但是,$result似乎实际上并不保存添加
$result
中
$result = $addRecord->execute();
if ($result){
//add successful
} else {
//add unsuccessful
}
我还想获得刚刚添加的记录id
。在表中,每条记录都有一个名为id
的auto_incremented
字段。我试过这么做
$new_id = $result['id'];
但是,$result
似乎实际上并不保存添加的记录。有人能确认这一点吗?然后我将如何访问刚才添加的记录
注意,可能有几个人同时添加到同一个表中,因此我需要一些真正准确的信息。应该可以
编辑:(没有看到您的其他部分)
MySQL将最后一个插入id保存在http://dev.mysql.com/doc/refman/5.0/en/getting-unique-id.html“>基于每个连接。因此,如果其他内容插入一行,则只有在使用相同连接(如持久连接)执行该查询时,才会返回意外结果.但正如我在问题中所说的,如果几个人同时添加,会怎么样?这不会返回一个可能由其他人插入的id吗?请参阅我问题的最后一行。@dmontain:不。它是每个连接。每个请求都有自己的连接,所以这不会是一个问题。@dmontain添加了关于一致性的信息,包括指向MySQL文档的链接。