6

たとえば、次のような外部テーブルがあります。

CREATE FOREIGN TABLE film (
    id          varchar(40) NOT NULL,
    title       varchar(40) NOT NULL,
    did         integer NOT NULL,
    date_prod   date,
    kind        varchar(10),
    len         interval hour to minute
)
SERVER film_server;

そのテーブルのプライマリ キーとして id を使用します (リモート データベースで設定)。ローカル テーブルで外部テーブルを参照し、ローカル テーブルに外部キー制約を設定したいと考えています。たとえば、次のようになります。

CREATE TABLE actor (
    id          varchar(40) NOT NULL,
    name       varchar(40) NOT NULL,
    film_id       varchar(40) NOT NULL,
)

ALTER TABLE actor ADD CONSTRAINT actor_film_fkey FOREIGN KEY (film_id) 
    REFERENCES film(id);

ただし、外部キー制約を追加しようとすると、次のエラーが発生します。

ERROR:  referenced relation "film" is not a table

外部テーブルに外部キー制約を追加することはできますか?

4

1 に答える 1