【发布时间】:2011-10-22 01:12:30
【问题描述】:
我是 PHP 新手,我想知道如何克服这个看似简单的问题:
我有一个包含多个表的数据库。其中 1 个表称为“order_header”。订单头有一个名为“orderID”的字段,它是primaryKey并且是自动递增的。 OrderID 用于数据库中的其他表(food_table、drinks_table、merchant_info、customer_info 等),并且对于特定订单是唯一的。
现在我使用通常的 INSERT 语句将数据插入到 order_header 中,并且 order_header 生成一个新的 orderID。但现在我需要检索我刚刚创建的 orderID 并使用它将数据插入到该数据库的其他表中。
问题是如何在一种原子方法中同时插入数据和检索结果 orderID?我无法使用 mySQL 查询来获取最后一个 orderID,因为如果另一个线程同时在 orderID 中插入了一个条目。
我想在 Java 中可以使用锁和 @synchronized 这个词,但是在 PHP 中如何做到这一点?
【问题讨论】: