在我的数据库中使用两个表并将一个 HTML 表单的数据拆分为两个不同的查询,我遇到了一个问题,从第一个查询中识别主键以用作第二个查询中的外键。这是我在伪代码中所说的:
$FormData1, $FormData2, ... INSERT INTO table1 //primary key is auto-generated int
$key = SELECT primaryKey FROM table1 WHERE *** Uh-oh!
$otherFormData1, $otherFormData2, $key ... INSERT INTO table2
鉴于系统需要设计为可以发生并发事务,我该如何解决这个问题?如果我知道它一次只能运行一个实例,那么我可以查询添加的最后一条记录,但我不觉得这是解决我的问题的一个非常“整洁”(甚至安全)的解决方案.