PDO:lastInsertId 返回啥值? [复制]

Posted

技术标签:

【中文标题】PDO:lastInsertId 返回啥值? [复制]【英文标题】:PDO: lastInsertId what value return? [duplicate]PDO:lastInsertId 返回什么值? [复制] 【发布时间】:2014-09-01 11:13:33 【问题描述】:

如果我使用 php,则在 PHP 中

$last_id = $db->lastInsertId();

变量$last_id 会获取我在该实例中插入的最后一行的值还是整个数据库的最后一行的值?

如果有很多用户同时连接和更新数据库,我的应用程序中需要的最后一个 id 可能不会与整个数据库中的最新填充相同。

提前感谢您的回复。

【问题讨论】:

它是“每个连接”......它只会返回针对该连接插入的最后一条记录的 id,而不管连接到您网站的不同用户的数量,因为每个用户都是通过不同的连接工作 【参考方案1】:

$last_id = $db->lastInsertId();返回此数据库连接的最后插入 ID。请记住,PDO 将始终返回当前活动数据库连接插入的最后一个 ID。

【讨论】:

以上是关于PDO:lastInsertId 返回啥值? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

PDO LastInsertId 不返回任何内容

为啥当我在 mysql 中调用 STORED PROCEDURE 时 pdo->lastInsertId() 返回 0?

PHP PDO::lastInsertId 返回 0

pdo lastInsertId() 不断返回 0

PDO lastinsertId 在事务中返回 0,php - 5.6

PDO::lastInsertID 有时不起作用