[pgsql-jp: 26947] Re: TABLEを削除できない場合がある
Yutaka tanida
yutaka @ hi-net.zaq.ne.jp
2002年 8月 8日 (木) 13:43:23 JST
谷田です。
On Thu, 8 Aug 2002 13:28:37 +0900
Hiroshi.Shinozawa @ jp.yokogawa.com wrote:
> 篠沢@横河電機です。
>
> postgreSQL 6.5.3を使用しています。
>
> DROP TABLE hogehoge;
>
> でテーブルを削除しましたが、
> 残骸が残っているようです。
>
> CREATE TABLE hogehogeが
> できません。
>
> どうも、Primary Keyを設定した場合にこうなるようで、
> Primary Key を設定しない場合は正常に削除できるようです。
>
> インデックスのところをみましたが、残骸はないようです。
>
> ご存知の方がおられましたら、アドバイスしていただきたく。
正確にエラーメッセージを出して頂けた方がアドバイスしやすいと思いますが。
たぶん残骸になる"hogehoge_pkey"インデックスを削除しないといけないとか、
そういうことで解決すると推察できますが・・・
Administrator=# create table a(i int primary key);
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index 'a_pkey' for table 'a'
CREATE
Administrator=# drop table a;
DROP
Administrator=# create table a(i int primary key);
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index 'a_pkey' for table 'a'
CREATE
関係ないようでよく似ている話ですが、serial型を使うと同じようなことが
7.2.1でも起こりますね。
Administrator=# create table a(i serial primary key);
NOTICE: CREATE TABLE will create implicit sequence 'a_i_seq' for SERIAL column 'a.i'
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index 'a_pkey' for table 'a'
CREATE
Administrator=# drop table a;
DROP
Administrator=# create table a(i serial primary key);
NOTICE: CREATE TABLE will create implicit sequence 'a_i_seq' for SERIAL column 'a.i'
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index 'a_pkey' for table 'a'
ERROR: Relation 'a_i_seq' already exists
Administrator=#
--
Yutaka tanida <yutaka @ hi-net.zaq.ne.jp>
pgsql-jp メーリングリストの案内