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

kasaharatt @ nttdata.co.jp kasaharatt @ nttdata.co.jp
2013年 4月 26日 (金) 17:31:56 JST


笠原です。

> 下記は、削除しなくてもいいでしょうか?
>  public | test_c1_seq   | sequence | owner
データ型変更後に、元のシーケンス情報が不要であれば削除してしまって構わないです。

# データ型変更後に、例えばどこまで採番されたか?などを一時的に把握する必要が
  あるならば残しておく意味がありますけど・・これは要件次第ですかね。


> -----Original Message-----
> From: pgsql-jp-bounces @ ml.postgresql.jp [mailto:pgsql-jp-bounces @ ml.postgresql.jp] On Behalf Of 田中謙介
> Sent: Friday, April 26, 2013 4:47 PM
> To: PostgreSQL Japanese Mailing List
> Subject: [pgsql-jp: 41397] Re: SELECT setval でエラーがでてしまいます
> 
> 笠原様
> 
> ありがとうございます。
> ちなみに、
> 
> 下記は、削除しなくてもいいでしょうか?
> 
>  public | test_c1_seq   | sequence | owner
> 
> 
> 2013/04/26 田中謙介 <kentana7245 @ gmail.com>:
> > 笠原様
> >
> > いつもありがとうございます。
> > 試してみます。
> >
> > 2013/04/26 kasaharatt @ nttdata.co.jp <kasaharatt @ nttdata.co.jp>:
> >> 笠原と申します。
> >>
> >>> 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 メーリングリストの案内