我经常听到使用"lastInsertId"(如果您不使用PDO,则使用mysql_insert_id())是有害的。在触发器的情况下,显然是这样,因为它可能返回完全不是INSERT创建的最后一个ID。
$DB->exec("INSERT INTO example (column1) VALUES ('test')");
// Usually returns your newly created ID.
// However when a TRIGGER inserts into another table with auto-increment:
// -> Returns newly created ID of trigger's INSERT
$id = $DB->lastInsertId();
有什么替代方案吗?