在python 3.6(anaconda3)中执行“import pyodbc”时,Jupyter Notebook抛出错误:ImportError:DLL加载失败

时间:2017-05-18 15:54:38

标签: python jupyter-notebook pyodbc

我想要完成的事情:

  • 在Jupyter Notebook中执行 import pyodbc 语句,从而使用pyodbc从SQL Server,Exasol等SQL数据库导入数据。

环境是什么:

  • Anaconda3(py36_0)安装在Windows 10 - 64位版本
  • pyodbc通过conda安装( conda install pyodbc ) - >这作为 conda list 显示安装了pyodbc 4.0.16 py36_0
  • jupyter notebook工作,例如 import pandas 正常工作

会发生什么:

  • 在jupyter笔记本中发出命令 import pyodbc 后,会出现以下错误消息:

    ImportError Traceback(最近一次调用最后一次)  in() ----> 1导入pyodbc ImportError:DLL加载失败:Die angegebene Prozedur wurde nicht gefunden。

提前感谢任何有用的答案!

4 个答案:

答案 0 :(得分:2)

我遇到了同样的问题。我不认为Anaconda与最新的pyodbc版本兼容。 (请参阅他们的网站:https://docs.continuum.io/anaconda/pkg-docs,其中列出了对Python 3.6的3.0.10版支持)

我能够通过使用以下命令降级我的包来解决这个问题:

conda install -c anaconda pyodbc=3.0.10

这在我的测试中对我有用。希望这可以帮助。如果有,请告诉我!

答案 1 :(得分:1)

翻译德语错误消息后,您似乎没有使用Anaconda安装pyodbc

conda install -c anaconda pyodbc=3.0.10

这应解决您的直接问题,但是,可能还需要进行一些其他调整才能在Windows上运行pyodbc

答案 2 :(得分:1)

将pyodbc从4.0.16-py36_0更新到4.0.17-py36_0为我解决了这个问题。

我从命令行运行了以下conda命令。

Integer count(List<Integer> list) {
    if (list.size() == 1) return list.get(0);
    int index = list.size() / 2;
    return count(list.subList(0, index)) +  count(list.subList(index, list.size()));
}

答案 3 :(得分:0)

我遇到了同样的问题

转到https://anaconda.org/anaconda/pyodbc/files

然后下载https://anaconda.org/anaconda/pyodbc/3.0.10/download/win-64/pyodbc-3.0.10-py36_1.tar.bz2

在这个地址\ Anaconda3 \ Lib \ site-packages中查找pyodbc.pyd和.eggs-info文件,将这些文件替换为pyodbc-3.0中3.0.10版本的同一文件0.10-py36_1.tar.bz2。

这对我有用。希望它也适合你