select setval([シーケンス名], [シーケンス値])僕がよく使用したのはcopy文でデータをインポートし、それに合わせて シーケンスを進めたいってばあい。以下の様にして実行。
select setval([シーケンス名], select max(id) from [テーブル名])ただシーケンスを初期状態にしたい場合はどうするのかな。
setvalのシーケンス値に0は入れれないし、1を入れても2からスタートしてしまう。
調べてみるとsetvalの第3引数にbooleanを指定してできるみたい。第3引数にfalseを指定するとnextvalが指定した値を返したくれるみたい。よって以下のようにします。
select setval('products_id_seq', 1, false)
まぁ使うときないけど
0 件のコメント:
コメントを投稿