[pgsql-jp: 25024] Re: FOREIGN KEY CONSTRAINTS

Tatsuo Ishii t-ishii @ sra.co.jp
2002年 3月 1日 (金) 07:52:55 JST


石井です.

> FOREIGN KEY に関してPostgreSQL7.2で仕様の変更に気づいたので
> 報告します。
> (SQLの規格に忠実にバグフィックスしたと思われます。)
> 
> 外部キーは通常、参照したいテーブルの主キーか候補キーを
> 参照するのが関係データベースの仕様と理解しています。
> SQLでは候補キーを明示的に示すキーワードはありませんが、
> 意味的には PRIMARY KEY 以外には UNIQUE属性を付けることで
> このことを表現できます。
> 
> PostgreSQL7.02の外部キー制約では、これらの制約の無い
> フィールドも外部キーの参照先として許されていました。
> このたび、7.2を入れて確認したところPRIMARY KEYか
> UNIQUE属性が無いフィールドを参照したときにエラーメッセージが
> 出力されるようになっています。

実際にはこのチェックは7.1で追加されています.

> ただし、table not found というようなメッセージでテーブルが
> ないと表示されます。

そうですか? 

ERROR:  UNIQUE constraint matching given keys for referenced table
"t1" not found

おっしゃるような「テーブルがない」というようなメッセージではないと思い
ますが.
--
Tatsuo Ishii



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