mysql でauto_incrementをやり直す??
本番環境ではやらないでしょうが、test環境で色々やっているときに修正したいときありますよね。
設計時の自分を恨んでしまうような…
Mysql で auto_increment を1から振り直す方法
一般的な方法は以下に記されています。
auto_incrementを1から振り直す
Mysql で auto_increment の初期値を変更する
例えば、usersというテーブルのauto_incrementの初期値を50からにしたいときは次のように…
1 2 |
alter table 'テーブル名' auto_increment = 設定したい初期値; 例: alter table users auto_increment = 50; |
問題点
ただし、設定した初期値よりも大きい値がすでに使用(データが生成)されている場合は、無視される(?)ようです。
こちらの記事で学びました。
どーも面倒なときは
- 該当カラム全体の値をauto_incrementの希望初期値より小さくする
- 設定する希望初期値を最大値より大きくする。
こんな感じかな。(雑)
sqlでは、update文で計算させられるので(今更)こんな感じでやっちゃえば良いかも
1 |
例:update 'テーブル名' set user_id = user_id - 500 where user_id > 500; |
だれかの参考になることを祈ります。。。