2

我想通过引用其他数据库表在当前数据库表中创建外键。

所以我决定和FDW一起去。

我已完成以下步骤:

第 1 步:创建扩展

CREATE EXTENSION postgres_fdw;

步骤 2 : 创建外部服务器

CREATE SERVER foreign_server
    FOREIGN DATA WRAPPER postgres_fdw
    OPTIONS (host '127.0.0.1', port '5432', dbname 'testing');

    CREATE USER MAPPING FOR postgres
    SERVER foreign_server
    OPTIONS (user 'postgres', password 'password');

第 3 步:创建外部表

CREATE FOREIGN TABLE fgn_tbl_calculator 
(
  value1 integer,
  value2 integer,
  sum integer,
  sub integer,
  div integer,
  mul integer
)
SERVER foreign_server
OPTIONS (schema_name 'public', table_name 'calculator');

第 4 步:使用外键创建表

create table calculator_copy
(
  value1 integer,
  value2 integer,
  sum integer,
  sub integer,
  div integer,
  mul integer,
  primary key (value1),
  foreign key (value1) references fgn_tbl_calculator(value1)
);

但是遇到了一个错误:

 ERROR:  referenced relation "fgn_tbl_calculator" is not a table
4

0 回答 0