PDO上次插入ID总是正确的吗?

dir*_*irk 21 php pdo

我有以下代码:

<?
$query =$db->prepare("INSERT INTO a_table (id, a_field) VALUES ('', (:a_field)");
$query->bindParam(":a_field", $a_value);
$query->execute();
$last_id = $db->lastInsertId('a_table');
?>
Run Code Online (Sandbox Code Playgroud)

我想问的是这个.想象一下,当两个人在同一时间加载页面时,在检索到最后一个ID之前插入其他人查询是否可能存在危险,混合ID?

And*_*ndy 26

不,这种情况是不可能的.方法$ db-> lastInsertId()返回此DB连接的最后插入的id.在其他页面中将是另一个连接和另一个最后插入的id.


Pie*_*ier 6

PDO将返回当前活动数据库连接插入的最后一个ID.