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 に答える