Problemas al instalar pymssql en Windows

No puedo encontrar un gran soporte para el soporte de instalación de pymssql en Windows. Estoy tratando de conectarme a una base de datos empresarial a través del envoltorio Python de otro empleado. Esta envoltura requiere mi instalación de pymssql. El RTFM en esto no tiene instrucciones muy explícitas sobre el proceso de instalación de FreeTDS y OpenSSL.

Pasos para instalar

Todos los archivos descargados (FreeTDS y OpenSSL) provienen del enlace RTFM mencionado anteriormente. Se menciona la adición de ambas descargas a una carpeta C: \ Archivos de progtwig y la adición de los archivos binarios en el sistema PATH , así que hice esto:

FreeTDS

  1. FreeTDS descargado >> creó el directorio C: \ Archivos de progtwig (x86) \ FreeTDS >> copie / pegue el contenido de la descarga de FreeTDS en C: \ Archivos de progtwig (x86) \ FreeTDS directorio >> agregue C: \ Archivos de progtwig (x86) \ FreeTDS en el PATH mi sistema

Contenido de la descarga de FreeTDS:

 \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) 

OpenSSL

  1. OpenSSL descargado >> creó el directorio C: \ Archivos de progtwig (x86) \ OpenSSL >> copie / pegue el contenido de la descarga de OpenSSL en C: \ Archivos de progtwig (x86) \ Directorio OpenSSL >> agregue C: \ Archivos de progtwig (x86) \ OpenSSL en el PATH mi sistema

Contenido de la descarga de OpenSSL:

 \HashInfo.txt \libeay32.dll \OpenSSL License.txt \openssl.exe \ReadMe.txt \ssleay32.dll 

PYMSSQL

  1. Instale pymssql a través de pip: python -m pip install pymssql >> luego verifique el estado de instalación:

Entorno de Python abierto

  • ejecutar: import pymssql
  • get: ImportError: DLL load failed: The specified module could not be found. : ImportError: DLL load failed: The specified module could not be found.

Super frustrante Realmente aprecio cualquier ayuda aqui!

(desafortunadamente, la mayoría de las personas que conozco ejecutan pymssql desde Linux y no tienen este problema)

Como se mencionó (brevemente) en la documentación pymssql que citó, y también en mi respuesta relacionada aquí , su PATH Windows debe incluir las carpetas donde residen los archivos DLL , no las carpetas base para FreeTDS (y OpenSSL, si es requerido).

Por lo tanto, en mi máquina de prueba que ejecuta Windows de 32 bits mi PATH necesitaba incluir la carpeta “lib-nossl” para FreeTDS …

 C:\Users\Gord\Downloads\freetds-v0.95.83-win-x86-vs2015\lib-nossl 

… para poder usar pymssql 2.1.2 con Python 3.5.1 para establecer una conexión no encriptada a mi servidor SQL.