Skip to main content

Solution : PyMSSql - import _mssql - ImportError: DLL load failed: The specific module could not be found


When you install pymssql module using pip in python and then try to import pymssql, you may end up with “PyMSSql - import _mssql - ImportError: DLL load failed: The specific module could not be found” error, if you are using pymssql version 2.1 or greater.

This is due to security reason, pymssql now is not linked with SSL and FreeTDS, unlike previous version where SSL and FreeTDS were jointly linked with pymssql during installation.
This information can be found on pymssql site found http://pymssql.org/en/latest/freetds.html#windows

In order to overcome, we need to install supporting components FreeTDS and OpenSSL independently and then pymssql will work without any issue.

Below are the steps to download and configure FreeTDS and OpenSSL.

And extract the file which is download. Now place the extract folder where your python module is installed. 
(Can be kept anywhere but to avoid accident deletion of the folder, I prefer here). I had my extracted folder in C:\Program Files\Python 3.5\freetds-v0.95.95-win-x86_64-vs2015

Now you may add the folder lib-nossl in FreeTDS to Environmental Variables in Windows.
(Ex: C:\Program Files\Python 3.5\freetds-v0.95.95-win-x86_64-vs2015\freetds-v0.95.95-win-x86_64-vs2015\lib-nossl)

If an SSL connection is not required, then we just have to download the FreeTDS components and ensure that the contents of the "lib-nossl" folder can be found by searching the Windows PATH.

If an SSL connection is required then we have to download both the FreeTDS and OpenSSL components and ensure that the appropriate DLLs (in the "lib" folder for FreeTDS, and in the "bin" or "bin64" folder for OpenSSL) can be located by searching the Windows PATH.

Comments

  1. MOLAP - Multidimensional OLAP - Both fact data and aggregations are processed, stored, and indexed using a special format optimized for multidimensional data.
    ROLAP - Relational OLAP - Both fact data and aggregations remain in the relational data source, eliminating the need for special processing.
    HOLAP - Hybrid OLAP - This mode uses the relational data source to store the fact data, but per-processes aggregations and indexes, storing these in a special format, optimized for multidimensional data. thanks for sharing your thoughts.

    ReplyDelete
  2. Thanks for sharing this information with us. Keep sharing more.
    Python Course Hyderabad

    ReplyDelete

Post a Comment

Popular posts from this blog

Zip/Unzip multiple files and also include password for zipped file using SSIS

We have many scenario that we need to Zip many files which we come across and then so some operations like either sending it as a email or just moving zipped file to some other destinations etc. But we were using manual method to zip multiple files. In this post, I tried to create a package which will zip multiple files using SSIS. Here for Zipping files purpose, I'm using 7-ZIP which is free software available in google sites. Download files and install onto your system. First let me show how to Zip on file and later I will show how to zip multiple files using SSIS and 7Zip tool. Compressing Single file. Here I'm trying to Zip one single flat file which is of 40MB size. I kept this file in C:\Documents and Settings\\Desktop\test\source folder. Now to compress this file, I will open my SSIS and I'm dragging and dropping EXECUTE PROCESS TASK from Control Flow. Now right click on Execute Process task and go for edit and select Process option. In process tab,

SSIS: The Value Was Too Large To Fit In The Output Column

I had a SSIS package where I was calling a stored procedure in OLEDB Source and it was returning a “The Value Was Too Large to Fit in the Output Column” error. Well, My Datatype in OLEDB source was matching with my OLEDB Destination table. However, when I googled, we got solutions like to increase the output of OLEDB Source using Advanced Editor option . I was not at all comfortable with their solution as my source, destination and my intermediate transformation all are having same length and data type and I don’t want to change. Then I found that I was missing SET NOCOUNT ON option was missing in Stored Procedure. Once I added it, my data flow task ran successfully. 

How to move multiple files in ssis and also rename simultaneously

There are two ways to achieve this. 1) We can move the flat files and then rename it. 2) While moving files itself, automatic rename should be done. We will do the second type. The criteria is to rename the files while moving from source to destination. So for that, we need FILE SYSTEM TASK to be included. Secondly since we need to move many files, we will use FOR EACH LOOP CONTAINER. To fetch all the files, we can use FOR EACH LOOP task in SSIS. In collection tab, we can select FOREACH FILE enumerator option for fetching files and we can change enumerator configuration Folder option: Points to source where we need to fetch files. Files: will give us idea whether we need to fetch all the files (*.*) or if we give extension like *.txt, it is going to fetch only  .txt files . Once I give Source name in FOR EACH LOOP container, It is going to fetch all the files corresponding to that path. Retrieve file name: This option is used to let the variables mentioned in VARIA