【问题标题】:Connection strings using pyodbc module not working with Enthought Python Distribution使用 pyodbc 模块的连接字符串不适用于 Enthought Python Distribution
【发布时间】:2013-03-11 23:05:54
【问题描述】:

背景

我一直在使用 64 位版本的 Python 2.7.3。我想学习 matplotlib 和 numpy 库,所以我最终安装了适用于 Windows 的 Enthought Python Distribution,并且我还安装了 ipython 以配合它。现在,突然之间,以前工作的连接字符串不再与这个 Python 发行版中的 pyodbc 库一起工作,我不知道为什么。

示例

以下代码之前运行良好:

import pyodbc
dbFile = r'D:\Dropbox\School\Senior_Project\Database\HarmonicProfileDatabase_be.accdb'
cnxn = pyodbc.connect(r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ='+dbFile)

但现在返回以下错误:

Error: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')

这些事情让学习编程变得如此令人沮丧,但我离想出一个我一直在努力放弃的项目的解决方案太近了。

【问题讨论】:

  • 不确定这个问题的答案是否有帮助:stackoverflow.com/q/6396429/42346
  • 嗯...这可能就是问题所在。 Enthought 安装是 32 位的,但我实际上运行的是 64 位 Office。我将在我的桌面上安装 Python,看看我是否有同样的问题,但我需要这个才能在我的笔记本电脑上工作!
  • 问题是我的office是64位安装的。我刚刚在我的桌面上试了一下,效果很好。谢谢你让我头疼,因为我完全忘记了我有 64 位办公室。如果你愿意,你可以把它作为答案。有什么建议可以让它在我的笔记本电脑上工作吗?因为没有免费的 64 位 Enthought 安装。

标签: python connection-string ipython pyodbc enthought


【解决方案1】:

问题是我使用的 Python(以及 pyodbc)版本是 32 位的。但是,我设法让自己获得了 64 位版本的 office。它们都需要是 32 位(或都是 64 位)才能正常工作。

【讨论】:

    猜你喜欢
    • 2017-01-22
    • 2011-05-28
    • 2017-10-15
    • 2018-02-20
    • 1970-01-01
    • 1970-01-01
    • 2017-09-14
    • 2018-12-27
    • 1970-01-01
    相关资源
    最近更新 更多