无法在Windows上安装pymssql。

5

我正在尝试安装pymssql作为

pip install pymssql

我使用的是 Windows 7 操作系统和 Anaconda 发布的 Python 3.5,但在运行过程中出现了以下错误信息:
Failed building wheel for pymssql

我相信这与 freetdspython-dev 有关。我该如何在Windows上安装它们?
需要安装哪些软件包?对于Python 2.7,pip install 可以正常工作。如果pip不起作用,是否还有其他方法可以下载和安装pymssql?

你在Windows上使用virtualenv吗? - FlipperPA
不,我没有运行虚拟环境。 - AbtPst
在我的Win7 64机器上,使用Python 3.5(通过安装程序而非anaconda安装),我可以很好地安装pymssql(最新版本2.1.2)。然而,我已经安装了virtualenvwrapper-win,其中可能包含一个可用的wheel版本。也许先尝试pip install virtualenvwrapper-win - FlipperPA
程序无法启动,因为您的计算机缺少vcruntime140.dll文件。请尝试重新安装程序以解决此问题。 - AbtPst
1
我在这方面有些力不从心,但你是机器上的管理员吗?也许可以尝试安装包而不是Anaconda? - FlipperPA
原来问题有两个。我没有管理员权限,而且我的pip版本过时了。以管理员身份运行cmd并更新pip后,我成功安装了pymssql! - AbtPst
1个回答

4

我刚经历了一小段时间的困难,最终让事情正常工作了,以下是我的做法:

首先找到你的Python目录(对我来说是c:\Python35),然后按照PyMSSQL文档中的说明下载FreeTDS二进制文件预编译的OpenSSL二进制文件。 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.conf配置文件,它可以提供一些全局设置,使您的Python脚本清除任何连接字符串。


我成功地将所需的文件放入了site-packages文件夹中,而不是纠结于PATH - Crazometer
@Crazometer 那也可以。路径建议来自FreeTDS文档(我认为是因为分发包中包含一些命令行实用程序)。 - Jason Sperske

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接