一、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不兼容。