【问题标题】:PostgreSQL Accessing multiple database from stored functionPostgreSQL从存储函数访问多个数据库
【发布时间】:2010-12-08 10:14:12
【问题描述】:

我想从 postgresql 存储函数访问不同的数据库。

例如:

CREATE OR REPLACE FUNCTION test ()  RETURNS SETOF volume AS
$BODY$

SELECT * FROM db2.volume
ORDER BY db2.volume.volumeID

$BODY$  
LANGUAGE sql STABLE  
COST 100  
ROWS 1000;

任何意见都会有很大帮助。

问候, 玛纳斯

【问题讨论】:

    标签: database postgresql stored-functions


    【解决方案1】:

    你需要的是 database link

    【讨论】:

    • 好吧,但是在 db 链接中我可以在运行时更改数据库名称。
    • 为什么不呢? SELECT dblink_connect('conn', 'dbname=yourdb');
    • CREATE OR REPLACE FUNCTION 测试(dbname 字符不同)返回 SETOF 卷作为 $BODY$ SELECT * FROM dblink_connect('dbname=$1') ORDER BY db2.volume.volumeID $BODY$ LANGUAGE sql STABLE COST 100 行 1000;
    猜你喜欢
    • 2013-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-20
    • 1970-01-01
    相关资源
    最近更新 更多