[pgsql-jp: 33732] Re: 外部キーの削除について

Mashiki mashiki @ yanah.com
2004年 7月 22日 (木) 09:27:45 JST


 Mashikiです。

>> 外部キーを以下のように作成しています。
>> CREATE TABLE SAMPLE_B(
>> ID CHAR(40) NOT NULL,
>> FOREIGN KEY(ID) REFERENCES SAMPLE_B(ID)
>> );
>
> う〜ん、これは通りそうにないですね。

確かに通らないですね (^^;

>CREATE TABLE SAMPLE_A(
>ID CHAR(40) NOT NULL PRIMARY KEY
>);
>
>CREATE TABLE SAMPLE_B(
>ID CHAR(40) NOT NULL,
>FOREIGN KEY(ID) REFERENCES SAMPLE_A(ID)
>);

手元のpostgresですと

\d+ sample_d

で、最後にconstraintの情報も出ています。

# \d+ sample_b
             Table "public.sample_b"
 Column |     Type      | Modifiers | Description
--------+---------------+-----------+-------------
 id     | character(40) | not null  |
Foreign Key constraints: $1 FOREIGN KEY (id) REFERENCES sample_a(id) ON 
UPDATE NO ACTION ON DELETE NO A
CTION

ですので

# alter table sample_b drop constraint "$1";
ALTER TABLE

でOKかと



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