MySQLのauto_incrementの連番をリセットする

テーブルにレコードのDELETEとINSERTを繰り返していると auto_incrementの連番をリセットしたいことがあります。

例えば、全てのレコードを削除して連番を振り直すのであればTRUNCATE TABLE 文を使用する事ができます。しかし、例えば、1-8番まで使用していて新しく追加するレコードに9番を振りたいのだけれど、そうならないというような場合、次の書式が使えます。

auto_incrementの連番をリセット する書式

ALTER TABLE tablename auto_increment = 1;

例えば以下の例ではcarsテーブルに対してauto_incrementの連番をリセットしています。

ALTER TABLE cars auto_increment = 1;

ただし、途中で抜けた連番を埋められるわけではありません。

抜けた連番を埋めるには、埋めたい番号を指定してINSERT文を発行する必要があります。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!