1
我正在使用oracle_fdw從postgres 9.5.3連接到Oracle數據庫。關於外部表Postgres的參考9.5
服務器和用戶映射已經在Postgres的數據庫創建:
CREATE FOREIGN SERVER foo FOREIGN DATA WRAPPER oracle_fdw OPTIONS (connection info..);
GRANT USAGE ON FOREIGN SERVER foo TO my_user;
CREATE USER MAPPING FOR my_user SERVER foo OPTIONS (user, password..);
然後外部表的創建:
CREATE FOREIGN TABLE FT_ORACLE(
my_id integer,
description character varying(40)) SERVER foo OPTIONS (schema, table);
我試圖從參考下表:
CREATE TABLE T_LOCALE(
id bigint NOT NULL,
oracle_id integer,
description character varying(40),
CONSTRAINT t_locale_pkey PRIMARY KEY(id));
試圖添加約束:
個ALTER TABLE T_LOCALE
ADD CONSTRAINT fk_t_locale_oracle_id FOREIGN KEY (oracle_id)
REFERENCES ft_oracle (id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION;
結果:
ERROR: referenced relation "ft_oracle" is not a table.
問題:你不能對外國表參考,是否正確?因爲Oracle不關心其他數據庫是否引用了它的表並只編輯/刪除它的條目。
謝謝您的確認,Laurenz! – Jakob