Python操作Mysql?

Python 中訪問 MySQL 的類庫有好多,這裡用的是MySqldb。

MySQLdb 是用於Python連結Mysql資料庫的介面,它實現了 Python 資料庫 API 規範 V2.0,基於 MySQL C API 上建立的。

方法/步驟

匯入MySQLdb

Python操作Mysql

執行如果報找不到module,需要先去安裝MySQLdb

Python操作Mysql

測試資料庫連線

# 開啟資料庫連線

db = MySQLdb.connect(host=host,user=user,passwd=passwd,db=db,port=port)

# 使用cursor()方法獲取操作遊標

cursor = db.cursor()

# 使用execute方法執行SQL語句

cursor.execute("SELECT VERSION()")

# 使用 fetchone() 方法獲取一條資料庫。

data = cursor.fetchone()

print "Database version : %s " % data

# 關閉資料庫連線

db.close()

Python操作Mysql

指令碼執行結果

獲得資料庫版本

Python操作Mysql

建立資料庫表

Python操作Mysql

資料庫插入操作

Python操作Mysql

Python操作Mysql

資料庫查詢操作

Python查詢Mysql使用 fetchone() 方法獲取單條資料, 使用fetchall() 方法獲取多條資料。

fetchone(): 該方法獲取下一個查詢結果集。結果集是一個物件

fetchall():接收全部的返回結果行.

rowcount: 這是一個只讀屬性,並返回執行execute()方法後影響的行數。

Python操作Mysql

資料庫更新操作

Python操作Mysql

執行事務

事務機制可以確保資料一致性。

事務應該具有4個屬性:原子性、一致性、隔離性、永續性。這四個屬性通常稱為ACID特性。

原子性(atomicity)。一個事務是一個不可分割的工作單位,事務中包括的諸操作要麼都做,要麼都不做。

一致性(consistency)。事務必須是使資料庫從一個一致性狀態變到另一個一致性狀態。一致性與原子性是密切相關的。

隔離性(isolation)。一個事務的執行不能被其他事務干擾。即一個事務內部的操作及使用的資料對併發的其他事務是隔離的,併發執行的各個事務之間不能互相干擾。

永續性(durability)。持續性也稱永久性(permanence),指一個事務一旦提交,它對資料庫中資料的改變就應該是永久性的。接下來的其他操作或故障不應該對其有任何影響。

對於支援事務的資料庫, 在Python資料庫程式設計中,當遊標建立之時,就自動開始了一個隱形的資料庫事務。

commit()方法遊標的所有更新操作,rollback()方法回滾當前遊標的所有操作。每一個方法都開始了一個新的事務。

Python操作Mysql

錯誤處理

DB API中定義了一些資料庫操作的錯誤及異常,下表列出了這些錯誤和異常:

Python操作Mysql

相關問題答案