我写了一个简短的python脚本,试图导入pyodbc扩展包,以便可以访问我的SQL表。
import pyodbc as pyodbc
cnxn = pyodbc.connect('Driver={SQL Server};'
'Server=DESKTOP-UO8KJOP;'
'Database=ExamplePFData'
'Trusted_Connection=yes;')
我肯定使用以下方法安装了扩展程序:pip install pyodbc。当我再次安装它时,cmd会说:要求已经满足:pyodbc在...中,我已经在目录中找到pyd文件。
我还尝试安装pypyodbc,该方法无效。
我得到的错误是:
Traceback (most recent call last):
File "C:\Users\Jerry\Documents\Python\SQLembed.py", line 5, in <module>
import pyodbc as pyodbc
ModuleNotFoundError: No module named 'pyodbc'
(其中第5行是“ import pyodbc”行)
我尝试将pyodbc.cp37-win_amd64.pyd文件复制到我的Python脚本文件夹和pip.exe文件所在的文件夹中。
任何人都可以帮助我解决此错误,以便我导入pyodbc吗?
我通过pip安装的所有python扩展/模块是否都需要与python.exe位于同一文件夹/目录中?
答案 0 :(得分:1)
作为参考,本指南(windows)中的步骤是(假设您已经安装了python):
答案 1 :(得分:0)
几天前,我遇到了相同的错误!幸运的是,我找到了答案。
您知道,问题在于pyodbc包含在.whl(车轮)文件/软件包中。因此,结果是您必须pip安装它。
Pip安装是一个非常棘手的过程,因此请小心。步骤是:-
步骤1。转到C:/ Python(无论使用什么版本)/脚本。向下滚动。如果看到名为pip.exe的文件,则表明您在正确的文件夹中。复制路径。
步骤2。在您的计算机中,搜索环境变量。您应该看到一个标签为“编辑系统环境变量”的选项。点击它。
第3步。在那里,您应该看到一个对话框。点击“环境变量”。点击“路径”。然后,点击“新建”。粘贴您先前复制的路径。
第4步。点击“确定”。
第5步。打开Windows文件资源管理器。 Shift +右键单击您的pyodbc.whl文件的安装位置。从下拉菜单中选择“在此处打开命令窗口”。输入“ pip install py”,然后单击“选项卡”,然后应填写完整的文件名。然后,按Enter,您就可以开始了!现在您不应该再得到该错误!!!
答案 2 :(得分:0)
我也面临同样的问题。您可以尝试以下方法:
a)您可以安装用于SQL Server的ODBC驱动程序。访问:
https://docs.microsoft.com/en-us/sql/connect/odbc/windows/system-requirements-installation-and-driver-files?view=sql-server-2017#installing-microsoft-odbc-driver-for-sql-server
b)卸载Python,然后关闭所有IDLE,然后再次安装Python。这对我有用。
答案 3 :(得分:0)
似乎您已经安装了 pyodbc模块,但是正在尝试从其他环境中引用它。
某些步骤:
引用:How to switch your project python environment to the one which includes pyodbc
答案 4 :(得分:0)
我遇到了同样的问题。
导入系统
print(sys.path)
事实证明,我正在使用的IDE(JetBrains的PyCharm)有一个必须安装pyodbc的目录。我使用cmd行提示符导航到PyCharm目录,并在那里重新安装了pip。
答案 5 :(得分:0)
尝试在生产服务器上运行脚本时,我有绝对相同的错误。 pip
成功安装了pyodbc
。它的文件位于我运行的...\Lib\site-packages
的位置python.exe
中(以cmd为单位)。但是python仍然找不到它。我已经尝试过手动重新安装它,但是没有任何改变。
然后我注意到prod上的python版本比开发版上的3.8.1
更新。因此,我安装了旧版本的python 3.6.5
(在其他目录中),并向其安装了pyodbc。
您怎么看? -现在一切正常!
答案 6 :(得分:0)
问题在于环境。你必须执行
.venv\Scripts\activate