pyodbc安装防陷坑备忘
想用python读写SQL SERVER数据库,python官方推荐的pyodbc是个比较好的选择,但是安装pyodbc时我遇到了几个坑。
我目前使用的是windows和python3.4环境,首先我尝试用pip install pyodbc直接安装pyodbc,但是没有成功,提示错误信息显示是没有安装“MICROSOFT VISUAL C++ 10.0”。
看来pip是通过传送脚本然后在本地编译实现安装的模式,但是我可不想安装那个臃肿庞大的微MVC,因为基本上很少用,然后看到网上有一种非常简易的解决方案:
直接下载pyodbc的.whl文件包到本地,然后再通过pip来安装,这样就无需安装MVC了,因为.whl是已经编译好的文件包。
于是我通过 https://pypi.python.org/pypi/pyodbc 下载了pyodbc-3.0.10-cp34-none-win32.whl 文件包,下载完后,我嫌文件名太长,就习惯性地将文件名改短为pyodbc.whl ,然后打开命令行工具,切换到文件所在的路径,执行 pip install pyodbc.whl,居然提示pydbc.whl不是有效的wheel文件!
然后我将文件名改回原先下载时的 pyodbc-3.0.10-cp34-none-win32.whl ,然后执行pip install pyodbc-3.0.10-cp34-none-win32.whl ,嘿嘿,居然成功了!
我目前使用的是windows和python3.4环境,首先我尝试用pip install pyodbc直接安装pyodbc,但是没有成功,提示错误信息显示是没有安装“MICROSOFT VISUAL C++ 10.0”。
看来pip是通过传送脚本然后在本地编译实现安装的模式,但是我可不想安装那个臃肿庞大的微MVC,因为基本上很少用,然后看到网上有一种非常简易的解决方案:
直接下载pyodbc的.whl文件包到本地,然后再通过pip来安装,这样就无需安装MVC了,因为.whl是已经编译好的文件包。
于是我通过 https://pypi.python.org/pypi/pyodbc 下载了pyodbc-3.0.10-cp34-none-win32.whl 文件包,下载完后,我嫌文件名太长,就习惯性地将文件名改短为pyodbc.whl ,然后打开命令行工具,切换到文件所在的路径,执行 pip install pyodbc.whl,居然提示pydbc.whl不是有效的wheel文件!
然后我将文件名改回原先下载时的 pyodbc-3.0.10-cp34-none-win32.whl ,然后执行pip install pyodbc-3.0.10-cp34-none-win32.whl ,嘿嘿,居然成功了!
这是什么奇怪的坑?难道.whl文件是一种连文件名都不可以修改的文件?改了文件名就影响了文件内的数据结构?