我运行的是 Win7 64 位和 Firebird 2.5.2。
是否可以通过 ODBC 从 64 位 C++ 应用程序访问 32 位 Firebird 数据库?我最初的想法是只要安装 64 位 Firebird ODBC 驱动程序就可以了。果然,安装后,64 位 ODBC 控制面板应用程序显示 Firebird 驱动程序,但在尝试将其指向使用 32 位 Firebird 创建的 .fdb 文件时,连接失败。我也从 64 位 firebird 安装中选择客户端库 (C:\Program Files\Firebird\Firebird_2_5\bin\fbclient.dll)。
关于从 64 位 C++ 应用程序通过 ODBC 访问 32 位 Firebird 数据库有什么建议吗?
编辑:
我的错,看起来工作正常。我一定是在设置时不小心混合了一些 32 位和 64 位配置。一旦我确保 1) 运行 64 位服务器,2) 使用 64 位 ODBC 数据源,其中 3) 引用了 64 位客户端 DLL(来自 64 位 Firebird 安装)我的 64 位 C++应用程序连接没有问题。
我想我检查了这些,但我一定是在 32 位和 64 位之间错过了一些东西。
最佳答案
请参阅原始帖子中的编辑。问题是在配置中混合了一些 32 位和 64 位部分。现在可以使用了。正确设置后,您绝对可以从 64 位应用程序访问 32 位数据库。另外,根据 Mark Rotteveel 的说法,只要您在应用程序端使用 64 位部分,您就可以运行 32 位服务器并从 64 位应用程序使用该服务器。
关于odbc - 通过 ODBC 从 64 位应用程序访问 32 位 Firebird 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13569933/