Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python &引用;未找到数据源名称且未指定默认驱动程序;使用Access ODBC_Python_Ms Access_Odbc_Pyodbc - Fatal编程技术网

Python &引用;未找到数据源名称且未指定默认驱动程序;使用Access ODBC

Python &引用;未找到数据源名称且未指定默认驱动程序;使用Access ODBC,python,ms-access,odbc,pyodbc,Python,Ms Access,Odbc,Pyodbc,我的软件: Python 3.4-64位 PyODBC 64位 已安装MS office软件包(32位) 问题: 现在,我尝试使用PYODBC访问安装在我的计算机上的msaccess2010。无论我尝试什么,它都不起作用。我的错误总是这样: pyodbc.Error: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0

我的软件:

  • Python 3.4-64位
  • PyODBC 64位
  • 已安装MS office软件包(32位)
问题:

现在,我尝试使用PYODBC访问安装在我的计算机上的msaccess2010。无论我尝试什么,它都不起作用。我的错误总是这样:

pyodbc.Error: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')
我已经看过了:

有人建议,这是32-64位的问题,我相信它是。在不安装32位python和32位pyodbc的情况下,是否可以进行一些修改以使其正常工作?我查看了这个网站。这说明了如何访问控制面板以修改ODBC连接和/或驱动程序。但是,我对windows数据库连接内部结构了解不多,无法开始一些更改

我能做些什么使它工作吗

在不安装32位python和32位pyodbc的情况下,是否可以进行一些修改以使其正常工作

不是真的。如果您安装了32位Office,那么您就拥有32位版本的Access数据库引擎(又称“ACE”),并且只有32位应用程序可以使用它

如果检测到32位Office组件,64位版本的Access数据库引擎的安装程序将中止。有一种方法可以强制安装程序继续,但不建议这样做,因为它显然会破坏Office

底线:应用程序的“比特度”必须与已安装的Access数据库引擎的“比特度”匹配。所以,实际上,你的选择是

  • 使用32位Python和pyodbc,或
  • 将32位Office替换为64位版本

  • 谢谢你的回复!昨天我做了很多尝试,认为我可以在windows的ODBC设置中调整一些东西,但它不起作用。因此,他很不情愿地去重新安装了32位版本的所有东西。