从PostgreSQL查询SQL Server

7
在Windows(目前是XP SP3)下有SQL Server 2008 R2和PostgreSQL 9.2。我如何从PostgreSQL查询SQL Server?如果通过链接服务器从SQL Server -> PostgreSQL没有问题。
在网上搜索后,我找到了odbc_fdw,但无法为9.2编译

是否有可行的解决方案?

@OMG Ponies:没错,但是dblink不是问题所在...我计划使用OLE DB或ODBC加上任何可用的工作fdw。 - revoua
祝你好运。数据需要多新?是否可以将其作为每晚的任务从SQL Server中提取数据以填充PostgreSQL数据库? - OMG Ponies
谢谢。不是夜间运行,应该作为常规查询运行。目前使用应用程序层(php脚本)从两个数据库中获取数据并操作数组,将结果输出给客户端。但由于行数很多,我需要多次迭代而不是在一个查询中完成所有操作。传输数据成本很高。 - revoua
2个回答

4
除了@vyegorov提到的标准但不成熟的SQL/MED和外部数据包装器,传统的解决此问题的方法是使用DBI-Link,这是一组通过plperl使用Perl DBI的外部数据映射函数。 http://pgfoundry.org/projects/dbi-link/

2

有一个SQL/MED扩展描述了数据库如何访问外部数据。

PostgreSQL通过Foreign Data Wrappers支持标准的这一部分。链接页面描述了现在可用的所有FDW(嗯,我想几乎都是)。我认为你对odbc_fdw的发现是正确的,但我承认,在Windows上使FDWs工作并不总是直截了当的。

如果您熟悉Python,可以查看Multicorn


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接