0

假设我运行这样的插入语句:

        $sql = "insert into tbl_features (feature_class, feature_name, description) values (?, ?, ?)";
        $q = $pdo_conn->prepare($sql);
        $q->execute(array($_GET['new_feature_class'], $_GET['new_feature_name'], $_GET['new_description']));

然后我想检索刚刚插入的行的 id 以在另一个表中使用它。我可以使用 select max() 但我怎么能确定没有其他人做过插入,从而给两个用户相同的最大值来尝试塞进其他表?我很高兴锁定整个表,代码很少运行,不会产生明显的差异。也许我很迂腐,但我想在晚上睡觉,因为我知道我的代码是防弹的。

4

1 回答 1

1

您可以使用 lastInsertId 来检索它: http ://php.net/manual/en/pdo.lastinsertid.php 。

于 2013-02-06T08:56:06.590 回答