この記事では主に、新しく挿入されたデータの ID を取得するための PHP のメソッドをいくつか紹介します。必要なときにそれを共有します。
知りたい 挿入したデータの ID は非常に便利です。以下に、一般的に使用される 3 つの方法を説明し、それぞれの長所と短所を分析します。
次のステートメントを使用します:
mysql_query("select max(id) from t1",$link);
このメソッドを使用すると、実際には最後の値である最大の ID 値が取得されますが、複数の接続スレッドがある場合、最大の ID は取得されません。これはドメイン スレッドを使用しないように挿入される必要があります。
2 番目に次の関数を使用します。
msyql_insert_id();
システムが INSERT を実行してから SELECT を実行すると、使用しているプログラミング言語が PHP である場合、それが別のバックエンド サーバーに分散される可能性があります。現時点では、最新の挿入 ID は mysql_insert_id() を通じて取得する必要があります。各 INSERT が完了すると、対応する自動インクリメント値が計算されて PHP に返されます。別のクエリを発行する必要はなく、mysql_insert_id() を使用するだけです。この関数は非常に便利です。ステートメントを挿入すると、自動的に最後の ID 値が返されます。つまり、この関数はマルチユーザーに対してのみ有効であるため、よく使用されます。 ;
ただし、この関数は id が bigint 型の場合に機能しなくなるという問題があるため、現在この関数を使用している場合は注意してください。ただし、そのような問題はめったに発生しないため、無視して大丈夫です。それ。
3: クエリ
msyql_query("select last_insert_id()");
last_insert_id() を使用します。この使用法は、mysql_insert_id () で発生する bigint 型の問題を解決します。
要約: 上記の分析に基づいて、最初の方法の使用はできるだけ少なくし、特別な状況に遭遇した場合は、3 番目の方法の使用を検討できます
関連する推奨事項:
PHPでその日の0時のタイムスタンプを取得する 詳細なステップバイステップの説明
以上がPHPに挿入されたデータのIDを取得するいくつかの方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。