I am trying to do the following in Python 3.7.1 on Windows
import sqlite3
but I get the following error message
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "c:\programdata\anaconda3\lib\sqlite3\__init__.py", line 23, in <module>
from sqlite3.dbapi2 import *
File "c:\programdata\anaconda3\lib\sqlite3\dbapi2.py", line 27, in <module>
from _sqlite3 import *
ImportError: DLL load failed: The specified module could not be found.
I have searched for a solution to the problem for quite a while now to no avail. I have also successfully run pip install pysqlite3
on the Anaconda prompt, but the import still fails. What do?
I got this working on windows by downloading: the sqlite3 dll (find your system version)
And placing it into the folder: C:\Users\YOURUSER\Anaconda3\DLLs
(Depending on how you installed Anaconda, this may have to be placed into the following folder: C:\ProgramData\Anaconda3\DLLs
)
According to @alireza-taghdisian, you can locate the exact path of your conda environments (where you need to copy the sqlite3 dll) by typing: conda info --envs on your anaconda prompt.
Locate the sqlite3.dll file. In my case it was in following folder
C:\Users\Admin\anaconda3\Library\bin
where C:\Users\Admin\anaconda3
is the folder where Anaconda was installed
Add this to PATH in environment variables, and it should work then.
Please check https://github.com/jupyter/notebook/issues/4332 I added anaconda root/Library/bin to my PATH and now it works!
Try copying the sqlite3.dll from the
C:\Users\YOURUSER\anaconda3\Library\bin
folder to
C:\Users\YOURUSER\Anaconda3\DLLs
Add CONDA_DLL_SEARCH_MODIFICATION_ENABLE=1 to your environment variables.
before executing the program, enter conda activate
in your shell.
I had tried all above solutions But for me and my system I got to know that I downloaded Python in C:\Python27 hence there is dll folder in python C:\Python27\DLLs I installed Sqlite3.dll in my above dll folder
May be this solution will help you because it completely depends on where do you install your python Happy coding :)
`
brackets for paths and code fragments. To highlight apps' names or interface, use a bold (**
brackets) or italic (*
brackets) font. To start from a new line use double space at the end of the line - the question'll be way more clear than using Enter everywhere. Adding some :
would be nice too.
I put the sqlite3.dll in the path folder of my Python venv and still wont work. I suspected it is a path problem.
(In my case: E:\Virtual_Env\mini_zinc\env\Scripts)
I found in my case I messed up installation in a virtual evn, somehow using an anaconda python kernel within a Python venv.
I reinstall the Python Venv and check the python version after installed Env is correct (not the Anaconda python), then proceed with Jupyter Notebook (or Juyterlab) and works fine.
I was able to resolve this issue by putting sqlite3.dll file in the C:\Users
Download sqlite3.dll file from https://www.sqlite.org/download.html or copy it from C:\ProgramData\Anaconda3\DLLs\
I found the @elgsantos useful. But for those who are new to Python and Conda like me, I would like to add a little bit of details.
1- I use miniconda3 for creating new environment.
2- interestingly, I got two installation path on my computer for conda: the first one (the obvious) is located on "C:\Users\taghdisian\miniconda3". The second one is on "C:\Users\taghdisian\AppData\Local\r-miniconda". The latter is the primary path that you need to copy your sqlite3 files into the envs folder. I copy them in the "C:\Users\taghdisian\AppData\Local\r-miniconda\envs\sdr3.9\DLLs" in which the sdr3.9 is one of my virtual Condo environment.
you can locate the exact path of your conda environments (where you need to copy sqlite3) by typing the conda info --envs
on your anaconda prompt.
I hope this help.
Success story sharing
_sqlite.pyd
file in that folder. That's good enough for command line python in the same virtual environment. Why isn't it good enough for Anaconda when both share the same~\Anaconda3\DLLs
folder insys.path
?