ホームページ >データベース >mysql チュートリアル >MySQL で次の自動インクリメント ID を取得するにはどうすればよいですか?

MySQL で次の自動インクリメント ID を取得するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-04 22:22:39972ブラウズ

How to Retrieve the Next Auto-Increment ID in MySQL?

MySQL で次の自動インクリメント ID を取得する

主キーとして自動インクリメントを利用するテーブルにレコードを挿入するには、次に利用可能な自動インクリメント識別子を取得することが重要です。この情報は、挿入中に主キー列を設定するために必要です。

次の自動インクリメント ID を取得するための MySQL クエリ

MySQL は、次の自動インクリメント ID を取得する簡単な方法を提供します。特定のテーブルの自動インクリメント ID:

SET information_schema_stats_expiry = 0;
SELECT AUTO_INCREMENT
FROM information_schema.tables
WHERE table_name = 'table_name'
AND table_schema = DATABASE( );
  • SET information_schema_stats_expiry = 0; - このステートメントは、information_schema_stats_expiry 値を一時的に 0 に設定し、最新の統計にアクセスできるようにします。デフォルトでは、86400 (24 時間) に設定されているため、関数が古いデータを返す可能性があります。
  • SELECT AUTO_INCREMENT - この句は、次に使用可能な自動を含む AUTO_INCREMENT 列を選択します。 -指定されたテーブルのインクリメント値。
  • FROM information_schema.tables - これは、現在のデータベース内のテーブルに関する情報を含む information_schema.tables システム テーブルを指定します。
  • WHERE table_name = 'table_name' AND table_schema = DATABASE( ); - これらの条件は結果をフィルタリングして、現在のテーブルに指定されたテーブルを表す行のみを含めます。 database.

SHOW TABLE STATUS を使用した代替方法

次の自動インクリメント ID を取得する別の方法は、SHOW TABLE STATUS クエリを使用することです。

SHOW TABLE STATUS LIKE 'table_name';

このクエリは、さまざまなテーブル ステータス情報を含む行を返します。以下を含みます:

  • Auto_increment - テーブルで次に使用可能な自動インクリメント値が含まれます。

以上がMySQL で次の自動インクリメント ID を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。