このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

MySQL オートインクリメントの値をリセット

この記事は最終更新日から1年以上が経過しています。

忘れないようにと。

MySQLのオートインクリメントの値をリセットするコマンドは。

ALTER TABLE 'テーブル名' AUTO_INCREMENT = 次の番号にしたい数値;

idなど自動的に増えるようにオートインクリメントを設定することが多々で、idのカラムが以下のようになっていて

id=1,2,3,4,5,6,7

id「5,6,7」を削除したとします。

id=1,2,3,4

それで、新たに行を追加した際、idは「5」になって欲しいところですが

id=1,2,3,4,8

こんな感じで削除したカラムのオートインクリメントの値は保持されたまま、idは次の値となってしまします。

そこで、削除した後、冒頭のコマンドで値の変更を。

id=1,2,3,4,5,6,7

↓ 削除

id=1,2,3,4

↓ 変更

ALTER TABLE `テーブル名` AUTO_INCREMENT = 次の番号にしたい数値;

↓ 追加

id=1,2,3,4,5

といった具合に。

うまくいかない場合

上記の方法で行ってもうまくいかなかったりします。

その際は、削除した後、AUTO_INCREMENTの設定を一度外すとうまくいきます。

id=1,2,3,4,5,6,7

↓ 削除

id=1,2,3,4

↓ AUTO_INCREMENTの設定を解除

ALTER TABLE `テーブル名` CHANGE `id` `id` INT NOT NULL;

↓ 変更

ALTER TABLE `テーブル名` AUTO_INCREMENT = 次の番号にしたい数値;

↓ 再度 AUTO_INCREMENTの設定

ALTER TABLE `テーブル名` CHANGE `id` `id` INT NOT NULL AUTO_INCREMENT;

↓ 変更

ALTER TABLE `テーブル名` AUTO_INCREMENT = 次の番号にしたい数値;

↓ 追加

id=1,2,3,4,5

とこの方法で解決しました。

忘れないようにとメモな感じでした。

Related Article

LATEST NEWS

RANKING

ARCHIVE

SPONSOR

現在、掲載募集中です。



Links

現在、掲載募集中です。



About Us

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、主に、ゲーム制作中心に港区六本木界隈で活動中。