PostgreSQL : truncate tableでシーケンスをリセットする方法

こんにちは、さるまりんです。

小ネタです。

タイトル通り、truncate tableでシーケンスをリセットする方法です。

PostgreSQLを使っていて、truncate tableしてみました。

truncate table my_sweet_table;

テーブルの主キーとして使っているカラムのシーケンスがリセットされるものだとばかり思ってました。

これ、されないんです!

シーケンスを同時にリセットするには次のようにします。

truncate table my_sweet_table restart identity;

これで主キーのカラムのシーケンスはリセットされて最初から振り直されます。

よかった〜。ならなかった時、焦りました。

ちなみにTRUNCATEは標準のSQLにはないようです。

読んでくださってありがとうございます。

ではまた!