1
我需要访问远程Postgres数据库中的表。我昨晚花了几个小时阅读文档,而这正是我所想到的。如何创建Postgres到Postgres外部数据表
-- surely this thing is already written somewhere?
CREATE FUNCTION pgsql_fdw_handler()
RETURNS fdw_handler
AS '?????' LANGUAGE C STRICT;
-- surely this thing is already written somewhere?
CREATE FUNCTION pgsql_fdw_validator(text[], oid)
RETURNS void
AS '????' LANGUAGE C STRICT;
CREATE FOREIGN DATA WRAPPER pgsql
HANDLER pgsql_fdw_handler
VALIDATOR pgsql_fdw_validator;
CREATE SERVER products_remote FOREIGN DATA WRAPPER pgsql OPTIONS
(host 'localhost', dbname 'product_db', port '1234');
CREATE USER MAPPING FOR CURRENT_USER
SERVER products_remote;
CREATE FOREIGN TABLE products (
name text,
id integer
) SERVER products_remote;
select * from products;
我不知道如何处理和验证函数,它们是否存在某处?我需要自己写吗? (看起来像什么?)并且会感谢整体方法的验证。
我确实发现了this contrib模块,但它显然不完整。
dblink模块更适合:http://www.postgresql.org/docs/current/static/dblink.html – 2012-07-26 16:01:43
谢谢,这就是我所需要的。如果你把它作为一个真正的答案,我会接受它。 – 2012-07-26 17:49:27
或者我可以回答自己,如果这更方便。 – 2012-07-26 17:50:00