Python的pymysql、mysql、mysqlx库连接数据库所使用的引擎不一样,简单操作都没什么影响的。如果一定要用mysql。较好用pymysql。纯python的,麻烦少一点。较好使用sqlalchemy做外层,pymysql作为驱动。这样有机会转到my sql。
一、Python的pymysql、mysql、mysqlx库的区别
Python的pymysql、mysql、mysqlx库连接数据库所使用的引擎不一样,简单操作都没什么影响的。如果一定要用mysql。较好用pymysql。纯python的,麻烦少一点。较好使用sqlalchemy做外层,pymysql作为驱动。这样有机会转到my sql。
PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。
PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。
连接数据库前,请先确认以下事项:
- 您已经创建了数据库 TESTDB。
- 在TESTDB数据库中您已经创建了表 EMPLOYEE。
- EMPLOYEE表字段为 FIRST_NAME, LAST_NAME, AGE, SEX 和 INCOME。
- 连接数据库TESTDB使用的用户名为 “testuser” ,密码为 “test123″,你可以可以自己设定或者直接使用root用户名及其密码,Mysql数据库用户授权请使用Grant命令。
- 在你的机子上已经安装了 Python MySQLdb 模块。
延伸阅读:
二、MySQLdb
MySQLdb又叫MySQL-python ,是 Python 连接 MySQL 的一个驱动,很多框架都也是基于此库进行开发,遗憾的是它只支持 Python2.x,而且安装的时候有很多前置条件,因为它是基于C开发的库,在 Windows 平台安装非常不友好,经常出现失败的情况,现在基本不推荐使用,取代的是它的衍生版本。
建立数据库连接
import MySQLdb
# 打开数据库连接
db = MySQLdb.connect(“localhost”, “testuser”, “test123”, “TESTDB”, charset=’utf8′,
cursorclass=MySQLdb.cursors.DictCursor)
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# 使用execute方法执行SQL语句
cursor.execute(“SELECT VERSION()”)
# 使用 fetchone() 方法获取一条数据
data = cursor.fetchone()
print “Database version : %s ” % data
# 关闭数据库连接
db.close()
尽管它是基于C实现的,速度会快一些,但是,基于C环境依赖也是它的一大缺点,它的安装对于windows用户及不友好。而且对于python3.x不兼容。