8

Php PDO 関数: lastInsertID について少し混乱しています。私が正しく理解していれば、データベースに挿入された最後の自動増分 ID を返します。

私は通常、ユーザーを登録する機能を作成しているときに、データベースにユーザーを挿入するクエリを実行するときに、この関数を使用します。

私の質問は、たとえば、ある時点で 100 人が自分のサイトに登録しているとします。また、あるユーザーが別のユーザーの 1 ミリ秒後に「登録」ボタンを押した可能性があります。次に、この関数 lastInsertId が、ほんの少し前に登録した別のユーザーの ID を返す可能性はありますか?

私が尋ねようとしているのは、サーバーが一度に 1 つの要求を処理し、一度に 1 つずつ php ファイルを通過することですか?

これについて教えてください。

ありがとうございました。

4

2 に答える 2

9

完全に安全です。競合状態はありません。挿入を行った pdo オブジェクトから最後に挿入された Id のみを返します。

于 2013-05-10T02:50:53.760 に答える
8

安全です - 現在の接続から値を返すことを保証します。

于 2013-05-10T02:19:49.947 に答える