返回 MySQL 中的等效值

use*_*452 6 mysql postgresql pdo

我需要在 MySQL 中找到 PostgreSQL 中的 RETURNING 功能的等效项(用于 INSERT INTO)。LAST_INSERT_ID() 不起作用,因为 id 不是自动递增的,而是由子查询生成的。由于 PDO 允许的单个查询之间存在延迟,我想在没有表锁定的情况下在单行中实现此操作,以保持表可用。

lqe*_*qez 2

添加一个虚拟自增主键怎么样?那么,该过程将不会通过单个查询来完成,而是可以在没有显式表锁定的情况下完成。

  1. 插入一行。
  2. 通过 LAST_INSERT_ID() 获取 PK。
  3. 获取结果为 [2] 的行。