Python代码调用MySQL时必须借助一个中间桥梁,这个桥梁就是mysql驱动程序,常见的MySQL驱动程序有mysql-connector、PyMySQL、mysqlclient。下面来分别介绍安装过程。
1、安装mysql-connector
① MySQL官方指定的Python连接驱动程序是mysql-connector.可以在命令提示符窗口输入命令:python -m pip install mysql-connector 进行在线安装。
黄色字体提示更新pip不用管
② 安装成功后,在pycharm的控制台测试import mysql.connector,若执行后不出错,则表示该驱动程序已经可以正常使用。
案例:连接MySQL数据库,建立数据库实例和表,插入一条记录。
在pycharm新建文件,输入如下代码,并执行
import mysql.connector # 导入数据库驱动模块mysql
cdb = mysql.connector.connect( # 连接MySQL数据库
host = "localhost", # 本地主机,可以用127.0.0.1代替
user = "root", # MySQL数据库登录超级用户root
passwd = '123456' # 数据库登录密码,为MySQL安装时的密码
)
ccursor = cdb.cursor() # 建立与数据库连接的游标
ccursor.execute("DROP DATABASE IF EXISTS StudyDB") # 当StudyDB已经存在时,先删除该数据库实例,否则第2次执行将报错
ccursor.execute("CREATE DATABASE StudyDB") # 建立StudyDB数据库实例
ccursor.execute("USE StudyDB") # 使用StudyDB数据库实例,不调用后续无法插入新记录
ccursor.execute("CREATE TABLE shopT(name VARCHAR(100),price int(12))") # 建立商店表shopT
ccursor.execute("INSERT INTO shopT(name,price) VALUES ('苹果',2)") # 插入一条记录
cdb.commit() # 将数据提交到数据库文件中(写入硬盘)
在workbench数据库管理工具可以查看到插入的记录,代表mysql-connector安装成功可用。
2、安装PyMySQL
PyMySQL是python连接MySQL的另一款比较流行的数据库驱动程序,可以在线安装,也可以下载安装包安装。这里仍然采用在线安装方法。
在命令提示符里输入pip install pymysql并执行。
pip install pymysql
输入上述命令没有安装成功,更换镜像清华源后安装成功了。
pip install pymysql3 -i https://pypi.tuna.tsinghua.edu.cn/simple/
安装了pymysql后,还要加两句话,它可以写在任意文件里,只要它执行就行,其实它就是猴子补丁,把里面mysqlclient动态替换成pymysql去操作的模块 。一般我们是在init文件里配置:
import pymysql
pymysql.install_as_MYSQLdb()
django 2.0.7 以后,就不支持pymysql了,如果在执行命令时报错,需要改源码:点击最后一个报错提示链接,在146行,把decode改成encode。
query = query.encode(errors='replace')
3、安装mysqlclient
mysqlclient既支持python2,又支持python3,无缝支持django,缺点是这个模块可能装不上。如果安装不上,看这篇博客:https://www.liuqingzheng.top/python/%E5%85%B6%E4%BB%96/01-%E5%90%84%E4%B8%BB%E6%B5%81Linux%E7%B3%BB%E7%BB%9F%E8%A7%A3%E5%86%B3pip%E5%AE%89%E8%A3%85mysqlclient%E6%8A%A5%E9%94%99/
安装mysqlclient 输入命令:
pip install mysqlclient