我在Postgres中有两个数据库,并希望将数据从一个数据库访问到其他数据库表。我试过这样:
dblink_connect('myconn','hostaddr=10.10.30.53 dbname=postgres user=postgres password=postgres')
和
dblink_connect_u('myconn','hostaddr=10.10.30.53 dbname=postgres user=postgres password=postgres')
这会导致语法错误:
错误:“dblink_connect”或附近的语法错误 第1行:dblink_connect('myconn','hostaddr = 10.10.30.53 dbname = postgre ... ^
* ** 错误 ** * 错误:“dblink_connect”SQL状态或附近的语法错误:
我是否需要更改pg.hba.conf
文件中的任何内容?
有人可以给我一个例子吗?
答案 0 :(得分:3)
语法错误表示语句本身会导致问题。更改pg_hba.conf
无法解决此问题。您的语句看起来没问题 - 除了plpgsql函数中缺少的SELECT
(或可能是PERFORM
):
SELECT dblink_connect('myconn'
,'hostaddr=10.10.30.53 dbname=postgres user=postgres password=postgres')
这是一个简单的SQL SELECT
声明
如果不是这样,您确定installed the additional module dblink并且search_path
包含您安装它的架构吗?
答案 1 :(得分:1)
是的,在我测试了连接是否已建立之后,我已经完成了search_path中包含的扩展链接和架构? 我收到了上述错误。 你能给出任何建议。