[pgsql-jp: 41393] Re: SELECT setval でエラーがでてしまいます

kasaharatt @ nttdata.co.jp kasaharatt @ nttdata.co.jp
2013年 4月 26日 (金) 15:40:37 JST


笠原と申します。

> SELECT setval(c1seq,56532);

Setval の実施方法ですが、正しくは↓ですかね。

SELECT setval('c1seq',56532);


> ALTER TABLE test ALTER COLUMN c1 DROP DEFAULT;
> 
> でSERIALを削除したのですが
> 
> \dで確認すると下記のようにsaequenceがのこっています。
> 
>  public | test          | table    | owner
>  public | test_c1_seq   | sequence | owner
データ型変更の時点でシーケンスが不要になるのであれば、ひろのぶさんの提示された方法のとおり
DROP SEQUENCE <シーケンス名> CASCADE;
を実施した方が良いです。



> -----Original Message-----
> From: pgsql-jp-bounces @ ml.postgresql.jp [mailto:pgsql-jp-bounces @ ml.postgresql.jp] On Behalf Of 田中謙介
> Sent: Friday, April 26, 2013 3:33 PM
> To: pgsql-jp @ ml.postgresql.jp
> Subject: [pgsql-jp: 41392] SELECT setval でエラーがでてしまいます
> 
> 昨日、ご教授いただいた皆様、ありがとうございます。
> また、1つ問題にぶち当たっています。
> どうかご教授ください。
> 
> ALTER TABLE test ALTER COLUMN c1 DROP DEFAULT;
> 
> でSERIALを削除したのですが
> 
> \dで確認すると下記のようにsaequenceがのこっています。
> 
>  public | test          | table    | owner
>  public | test_c1_seq   | sequence | owner
> 
> その上で
> CREATE SEQUENCE c1seq MAXVALUE 9223372036854775807;
> でシーケンスをつくり
> 
> SELECT setval(c1seq,56532);
> で値を設定したところ
> 
> ERROR:  column "c1seq" does not exist
> とエラーがでます。
> 
> 
> どうしたらいいでしょうか


pgsql-jp メーリングリストの案内