php - 如何确保 PDO 的 lastInsertId() 不是另一个同时插入的?

标签 php mysql pdo

我正在使用 PDO 做一个带有 INSERT SQL 查询的注册表单。在这个INSERT之后,我想提取刚刚创建的userid(自增,主键),INSERT到另一个表(一个“确认码”表)

但是我如何确保这个用户 ID 不是第二个用户的用户 ID,该用户在第一个用户之后注册 1/1000 秒?

我应该找到一些方法来锁定表吗?我应该使用交易吗?

最佳答案

lastInsertId()返回在该连接上插入的最后一行的标识符,因此并发用户(与数据库的不同连接)不会干扰。

关于php - 如何确保 PDO 的 lastInsertId() 不是另一个同时插入的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10711966/

相关文章:

php - 按元数据显示 WordPress 自定义帖子

php - 将 PHP 中的 mySQL 语句的二进制变量转换为十六进制表示形式

php - MX/loader.php 第 99 行出现 Codeigniter 数据库错误

mysql - 连接两个表时如何避免重复值?

php - 与简单的 PDO 相比,Doctrine 的数据库抽象层提供了什么?

php - 什么是客户端准备好的语句?

php - Silverstripe 页面模板保存到数据库问题

php - 在不同插件中使用 add_submenu_page 到 add_menu_page 时出错

mysql - 如何根据时间(月、年)统计记录?

php - 如何从特定列中获取最后插入的行?