在Windows(目前是XP SP3)下有SQL Server 2008 R2和PostgreSQL 9.2。我如何从PostgreSQL查询SQL Server?如果通过链接服务器从SQL Server -> PostgreSQL没有问题。 在网上搜索后,我找到了odbc_fdw,但无法为9.2编译。 是否有可行的解决方案?
除了@vyegorov提到的标准但不成熟的SQL/MED和外部数据包装器,传统的解决此问题的方法是使用DBI-Link,这是一组通过plperl使用Perl DBI的外部数据映射函数。 http://pgfoundry.org/projects/dbi-link/
有一个SQL/MED扩展描述了数据库如何访问外部数据。 PostgreSQL通过Foreign Data Wrappers支持标准的这一部分。链接页面描述了现在可用的所有FDW(嗯,我想几乎都是)。我认为你对odbc_fdw的发现是正确的,但我承认,在Windows上使FDWs工作并不总是直截了当的。 如果您熟悉Python,可以查看Multicorn。