我无法在Windows上find对pymssql安装支持的很好的支持。 我试图通过另一个员工的python包装连接到企业数据库。 这个包装需要我安装pymssql。 对此的RTFM对FreeTDS和OpenSSL的安装过程没有非常明确的指示。
所有下载的文件(FreeTDS和OpenSSL)都来自上面提到的RTFM链接。 有提到将两个下载文件添加到C:\ Program Files文件夹并将二进制文件添加到系统PATH
,所以我这样做了:
PATH
\bin \bsqldb.exe \bsqldb.exe.manifest \bsqlodbc.exe ... \tsql.exe \include \bkpublic.h \cspublic.h \cstypes.h ... \tds_sysdep_public.h \lib \static \db-lib.lib \iconv.lib \libct.lib \replacements.lib \tds.lib \ct.dll \ct.dll.manifest ... \tsodbc.lib \lib-nossl (same as \lib)
PATH
\HashInfo.txt \libeay32.dll \OpenSSL License.txt \openssl.exe \ReadMe.txt \ssleay32.dll
python -m pip install pymssql
>>然后检查安装状态: import pymssql
ImportError: DLL load failed: The specified module could not be found.
超级沮丧。 真的很感谢这里的任何帮助!
(不幸的是,大多数我认识的人从Linux运行pymssql,他们没有这个问题)
正如你在引用的pymssql文档中提到的(简要地),以及在这里我的相关答案,你的Windows PATH
需要包括DLL文件所在的文件夹,而不是FreeTDS的基础文件夹(和OpenSSL,如果需要)。
因此,在运行32位Windows的测试机上,我的PATH
需要包含FreeTDS的“lib-nossl”文件夹…
C:\Users\Gord\Downloads\freetds-v0.95.83-win-x86-vs2015\lib-nossl
…为了让我使用Python 3.5.1与pymssql 2.1.2建立一个非加密连接到我的SQL server。