PostgreSQL 9.1 ODBC的32位和64位版本是混合的

时间:2012-06-05 07:40:21

标签: postgresql 64-bit odbc sas

我已经安装了psbitODBC 9.1的32位和64位版本。当我配置32位和64位系统DSN时,它们会错误地写入ODBC.ini文件:

[ODBC 32 bit Data Sources]
pg_crdb_latest=PostgreSQL Unicode (32 bit)
pg_crdb_latest_32=PostgreSQL Unicode(x64) (32 bit)
[pg_crdb_latest]
Driver32=C:\Program Files (x86)\psqlODBC\0901\bin\psqlodbc35w.dll
[pg_crdb_latest_32]
Driver32=C:\Program Files\psqlODBC\0901\bin\psqlodbc35w.dll

使用 64位ODBC数据源管理员添加 pg_crdb_latest DSN。 pg_crdb_latest_32 DSN添加了 32位

仅供参考 - 我首先安装了32位版本,然后安装了64位版本。

结果是我在尝试连接到SAS 9.2 64bit的PostgreSQL 9.1 64位时出现此错误:

  

错误:尝试建立连接时出现CLI错误:[Microsoft] [ODBC   驱动程序管理器]指定的DSN包含体系结构不匹配   在驱动程序和应用程序之间

任何想法如何设置这个权利?我正在运行Windows 7 Pro 64位。

1 个答案:

答案 0 :(得分:1)

此链接解释了所有

http://www.easysoft.com/developer/interfaces/odbc/64-bit.html#odbc-windows

所以有两件事:

  1. Windows对ODBC的文件和目录命名约定非常差 - 因此存在混淆
  2. 64位PostgreSQL ODBC目前非常慢(通过OLEDB比SAS到SQL 64位慢10倍) - 我会进一步调查