ホームページ >バックエンド開発 >PHPチュートリアル >MYSQL のヒント -- LAST_INSERT_ID_PHP チュートリアル
実際、この 2 つは違いがあり、LAST_INSERT_ID() は bigint 値の ID を返すことができます。ただし、mysql_insert_id は int を返します。 ID が unsigned int または bigint の場合。したがって、返されたものは間違っている可能性があります。代わりに LAST_INSERT_ID() を使用してください。
一部の友人は 0 を返します。実際、LAST_INSERT_ID() は AUTO_INCREMENT の ID を返します。
テーブル構造にAUTO_INCREMENTが設定されていない場合は返却できません。
まだ0を返す人もいます。その場合は、挿入遅延関数が使用されているかどうかを確認する必要があります。この場合、即時戻り ID 値は返されません。
多くの人は、この last_insert_id を置き換えるために select max(id)... を使用することを好みます。前回入力したIDが消えています。そして、last_insert_id は mysql 接続に対応します。つまり、現在のスレッドに対応し、他のスレッドによって干渉されません。データベースにおかしなエラーが発生した場合、例えばデータAの情報が更新されるはずが、その結果データBが更新されてしまい、それが正しい場合もあれば、間違っている場合もあり、非常に不快になります。正しい人がたくさんいます。 select max(id) が使用されているかどうかを確認してください
http://www.bkjia.com/PHPjc/320813.html
www.bkjia.com