【问题标题】:Cannot install pymssql on windows无法在 Windows 上安装 pymssql
【发布时间】:2016-05-20 02:41:04
【问题描述】:

我正在尝试将 pymssql 安装为

pip install pymssql

我有 Windows 7 和 python 3.5(来自 anaconda),但我得到了

Failed building wheel for pymssql

我相信它与freetdspython-dev 有关。我如何在 Windows 上安装这些?

我需要安装哪些软件包?这个 pip install 对于 python 2.7 工作得很好。如果 pip 不起作用,有没有其他方法可以下载和安装 pymssql?

【问题讨论】:

  • 你在 Windows 上使用 virtualenv 吗?
  • 不,我没有运行虚拟环境
  • 在我的 Win7 64 机器上,使用 Python 3.5(通过安装程序安装,而不是 anaconda),我可以很好地安装 pymssql(最新版​​本,2.1.2)。但是,我安装了 virtualenvwrapper-win,它可能包括一个工作版本的 wheel。也许先试试pip install virtualenvwrapper-win
  • 程序无法启动,因为您的计算机中缺少 vcruntime140.dll。尝试重新安装程序来解决这个问题。
  • 我的深度不够,但您是这台机器的管理员吗?也许尝试安装包而不是 anaconda?

标签: python freetds python-3.5 pymssql


【解决方案1】:

我刚刚经历了这个小小的地狱,终于让事情正常了,这就是我最终要做的事情:

首先找到您的 Python 目录(对我来说是c:\Python35),然后按照PyMSSQL documentation 上的说明下载FreeTDS binariesprecompiled OpenSSL binaries。 Open SSL 二进制文件是在不同版本的 MSVC 中构建的,对我来说,我需要 MSVC 2015 32 位二进制文​​件(因为我的 Python 副本是 32 位版本)。 FreeTDS 有点神秘,这里不同的 vs20xx 版本适用于不同代的 Python,在我的例子中,-vs2015 有效,因为我使用的是 Python 3.5,它也应该适用于你。

接下来,从 OpenSSL 版本中的“/bin”目录和 FreeTDS 版本中的 /lib 目录中提取 dll 到一个文件夹中(在我的例子中,我使用了 c:\Python35\FreeTDS)。

最后将此文件夹添加到您的系统PATH。您现在可以运行import pymssql 并且不会收到任何错误。在 Windows 上,您还可以创建一个位于 C:\freetds.confconfig file,它可以提供一些全局设置以使您的 python 脚本不包含任何连接字符串。

【讨论】:

  • 而不是摆弄PATH,我还成功地将所需文件放入site-packages文件夹中。
  • @Crazometer 也可以。路径建议来自 FreeTDS 文档(我认为是因为发行版中包含一些命令行实用程序)
猜你喜欢
  • 2018-03-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-07
  • 1970-01-01
  • 2020-02-17
  • 2017-08-09
相关资源
最近更新 更多