MYSQLのTRUNCATEとDELETEの違いとか、AUTO_INCREMENTの消し方

PHPでMYSQLを使っていて、DELETEでテーブルの内容を消しても、なぜか次にデータを入れた時、AUTO_INCREMENTの値が1からではなくて、テーブルのデータを消す前の数字からの続きになってしまう。

原因がわからずいろいろいじったところ、PHPMYADMINにあるテーブル内容削除を使うと、綺麗にAUTO_INCREMENTの値も削除された。

PHPMYADMINにあるテーブル内容削除のコマンドは、DELETEではなくて、TRUNCATEとなっている。

調べみたら、TRUNCATEだとAUTO_INCREMENTの値も消されるが、DELETEだと保持されるみたい。


広告

コメントを残す