首先要说明是基于Python3.6.3的,安装方法有所不同,以前网上说的一些方法试了基本没用,踩过了坑,现在列一下我的成功安装方法给坑友们
系统环境:win10企业版64位
开发环境:vs2015
Python版本:3.6.3 64位
一、下载FreeTDS,网上有一些对于旧版本Python是要先下载Pymssql,3.6.3不用,不要再去踩坑了,直接下FreeTDS
地址:https://github.com/ramiro/freetds/releases
我下的是vs2015版本,因为我是vs2015开发环境,下载好后解压到你想要的目录,不一定要在Python目录,解压得到以下文件
然后将【include】目录下的所有文件复制到Python安装目录下的【include】下,再将【lib-nossl】\【static】目录下的所有文件复制到Python安装目录下的【libs】目录下;
二、安装Pymssql
以管理员身份启动CMD窗口,CD到你的PYTHON安装目录的【Scripts】目录
运行以下命令:pip install pymssql
看到以上内容,Successfully 表示安装成功啦;
如果没有拷贝FreeTDS文件,在安装过程中会出现一系列缺文件的问题,缺的文件你都可以到FreeTDS目录下找到,如果为了文件,直接把FreeTDS的目录所有文件全复制到Python目录下是可以的;
三、安装PYMYSQL
>pip install pymysql
四、有些可能在安装时会出现以下编码问题,我就碰到过,因为我的Python默认是UTF-8,而执行PIP安装时会报字符集错误,如:会有以下内容段
UnicodeDecodeError: 'utf8' codec can't decode
到Python安装目录【\Lib\site-packages\pip\compat】下打开__ini__.py,找到【def console_to_str(s): try: return s.decode(】
将s.decode(的内容改为'gbk‘,因为windows默认是gbk编码,这样就不会报编码错误了
五、连接数据库,获取数据
编写代码:
运行调试(TMD报错):
又是编码问题?
用记事本打开[PythonApplication2.py]文件,另存为时查看文件编码方式为ANSI,因为代码中含有中文【数据库连接失败】这段话;
立即改成UTF-8保存替换,然后再到VS2015会提示更新代码,此时中文成了乱码
手动改成”数据库连接失败“,再次运行,成功,没再报错:
总的来说Python的编码问题是个麻烦事,网上查了有很多乱七八遭的编码问题,WINDOWS的中文操作系统编码好像默认是GBK,文件格式默认是ANSI格式,而我们安装PYTHON3.6时是UTF-8,文件格式是UTF-8;所以都会乱码,包括在WEB开发时Print("中文")一样在网页上是乱码,尽管:
print("")
一样乱码,查看网页默认编码是UTF-8,为什么呢?因为操作系统默认输出是GB2312/GBK,所以你在网页上改变编码方式为GB2312中文就正常的;因此
print("")
按上面的方法改一下就可以了,改成GB2312输出,就没事了
未来坑还很多,希望一路走好