• ベストアンサー

AUTO_INCREMENTについて教えてください

■質問1 PHPを使ってMySQLに接続しているのですが、 「AUTO_INCREMENT」指定しているIDの次の値を取得したいのですが、 どうすれば良いでしょうか? 用途としては、レコードを挿入する際、画像ファイルにレコードID名を付与したパスをつけたいのです。 <やりたいこと> 1.AUTO_INCREMENT指定しているIDの次の値を取得 2.画像ファイル名に付与 3.レコード挿入 この1を、どうやるか知りたいです ■質問2 「AUTO_INCREMENT」指定はどこに保存されているのでしょうか? 例えばレコードを削除した後、新たにデータ挿入する場合、 次の「AUTO_INCREMENT」値ではなく、削除した一番若い番号を利用することは可能でしょうか? ■質問3 質問2に関連しているのですが、DUMPデータを移行した際など、次の「AUTO_INCREMENT」値も新しいDBへ引き継がれるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

■質問1 SHOW TABLE STATUS WHERE Name = 'テーブル名' の結果で返却された、 Auto_incrementカラムの値が、 次回発行される「auto increment の値」です。 ■質問2 AUTO_INCREMENTが設定されているカラムに対しても値を自分で指定して設定することができますので、 削除した一番若い番号を利用することは可能です。 ↓ mysql> insert into autotest(id, name) values(15, 'DVDプレイヤー'); ■質問3 引き継がれます、AUTO_INCREMENT値500までデータがあればAUTO_INCREMENT値501からINSERTされます。

re999
質問者

お礼

回答ありがとうございました。 参考になりましたー

関連するQ&A