通过 ODBC 连接到数据库
Connecting to database via ODBC
我在使用 SQL Anywhere 12 数据库的 64 位服务器上安装了 运行 32 位软件 (Lexware) 运行。多个客户端通过 ODBC 连接到此数据库。
一名员工更新服务器后,一个客户端停止正常工作。 PyOdbc 给出的消息是驱动程序的体系结构与 Lexware 的体系结构不对应。
看来我使用的是 64 位 ODBC 驱动程序,它不适用于 32 位 Lexware。所以我尝试使用 32 位 ODBC 驱动程序。客户端正在使用 Windows7 64 位。
- 我转到 32 位 ODBC 数据源
- 点击添加
- 选择"SQL Anywhere 12"-驱动程序
- 点击完成
- 然后出现错误消息:"The setup routines for SQL Anywhere 12 could not be found. Install the driver again."
- 我点击确定。出现另一条消息。 “发现错误:无法在注册表中找到组件。
- 然后我再次安装了整个 sybase 驱动程序。
但是我得到了同样的错误。我不知道该怎么办了。我还尝试了其他几种方法。我感到好奇的是,之前一切正常。所有其他客户也可以工作。只有这个没有。我需要这个来为我的公司工作。
我该如何解决这个问题?
您需要安装 32 位版本的 Lexware ODBC 驱动程序。您还需要安装用于查询数据库的客户端的 32 位版本。
您不能在一个进程中混合使用 32 位和 64 位代码。
我找到了解决方案。
在"HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/ODBC/ODBCINST.INI/SQL Anywhere 12"
之下
缺少字符串 "Driver" 和 "Setup"。我添加了 32 位 ODBC 驱动程序的路径。现在一切都恢复正常了。
我在使用 SQL Anywhere 12 数据库的 64 位服务器上安装了 运行 32 位软件 (Lexware) 运行。多个客户端通过 ODBC 连接到此数据库。
一名员工更新服务器后,一个客户端停止正常工作。 PyOdbc 给出的消息是驱动程序的体系结构与 Lexware 的体系结构不对应。
看来我使用的是 64 位 ODBC 驱动程序,它不适用于 32 位 Lexware。所以我尝试使用 32 位 ODBC 驱动程序。客户端正在使用 Windows7 64 位。
- 我转到 32 位 ODBC 数据源
- 点击添加
- 选择"SQL Anywhere 12"-驱动程序
- 点击完成
- 然后出现错误消息:"The setup routines for SQL Anywhere 12 could not be found. Install the driver again."
- 我点击确定。出现另一条消息。 “发现错误:无法在注册表中找到组件。
- 然后我再次安装了整个 sybase 驱动程序。
但是我得到了同样的错误。我不知道该怎么办了。我还尝试了其他几种方法。我感到好奇的是,之前一切正常。所有其他客户也可以工作。只有这个没有。我需要这个来为我的公司工作。
我该如何解决这个问题?
您需要安装 32 位版本的 Lexware ODBC 驱动程序。您还需要安装用于查询数据库的客户端的 32 位版本。
您不能在一个进程中混合使用 32 位和 64 位代码。
我找到了解决方案。
在"HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/ODBC/ODBCINST.INI/SQL Anywhere 12"
缺少字符串 "Driver" 和 "Setup"。我添加了 32 位 ODBC 驱动程序的路径。现在一切都恢复正常了。