Python MySQL 常用類別方法簡介
本篇文章主要介紹 Python 操作 MySQL 的時候,常用的類別和方法,使用的套件是 mysql-connector-python,分別介紹兩個類別 MySQLConnection 和 MySQLCursor 的方法
1 | pip install mysql-connector-python |
- MySQLConnection 類別
- MySQLConnection 關閉方法
- MySQLConnection 交易方法
- MySQLConnection 連線方法
- MySQLConnection cursor
- MySQLCursor 類別
- MySQLCursor 關閉方法
- MySQLCursor 執行方法
- MySQLCursor 獲取方法
MySQLConnection 類別
MySQLConnection 是用來管理應用程式和 MySQL 伺服器的連線,可以用來傳送 SQL commands、SQL statements 和讀取結果
MySQLConnection 關閉方法
MySQLConnection.close(): 同步版本的 disconnect(),通常使用此命令進行關閉MySQLConnection.disconnect(): 傳送 QUIT Command 且關閉 socketMySQLConnection.shutdown(): 直接關閉 socket,不傳送 QUIT Command
MySQLConnection 交易方法
交易 (Transaction): 用來處理數個 SQL statements,全部執行成功,或全部不執行,不會執行到一半造成資料異常MySQLConnection.commit(): 傳送 COMMIT statement 給 MySQL 伺服器,預設是不使用 autocommit,每次交易後要呼叫此方法MySQLConnection.rollback(): 傳送 ROLLBACK statement 給 MySQL 伺服器,回復當次交易改變的資料
MySQLConnection 連線方法
MySQLConnection.connect(): 建立一個連線到 MySQL 伺服器,並開始一個 sessionMySQLConnection.is_connected(): 使用 ping() 確認 MySQL 連線是否可用,不一樣的是此方法會回傳 bool,而非 raise exceptionMySQLConnection.ping(): 確認 MySQL 連線是否可用,當連線不可用時會 raise exception,同時提供 reconnect 的屬性自動重新連線
MySQLConnection cursor
MySQLConnection.cursor(): 回傳一個 MySQLCursor() 物件
MySQLCursor 類別
MySQLCursor 是一個用來執行 SQL statements 的類別,下列是繼承於 MySQLCursor 相關的子類別
MySQLCursorBufferedMySQLCursorRawMySQLCursorBufferedRawMySQLCursorDictMySQLCursorBufferedDictMySQLCursorNamedTupleMySQLCursorBufferedNamedTupleMySQLCursorPrepared
MySQLCursor 關閉方法
MySQLCursor.close(): 關閉當前 cursor,重新設定所有結果,確保沒有被原本的 MySQLConnection 物件參考
MySQLCursor 執行方法
MySQLCursor.execute(): 這個方法用來執行對資料庫的操作MySQLCursor.executemany(): 這個方法用來執行對資料庫的操作,並搭配數組參數,例如插入多筆資料
MySQLCursor 獲取方法
MySQLCursor.fetchone(): 這個方法收到搜尋結果的下一列,回傳一筆 tuples,若沒有資料則回傳 NoneMySQLCursor.fetchall(): 取得所有尋結果,回傳一個 tuples 列表MySQLCursor.fetchmany(): 取得多筆尋結果,可指定要求的筆數,若可用資料筆數少於要求筆數,則回傳剩餘的筆數
fetchall() 和 fetchmany() 使用 fetchone() 實作
當 cursor 作為迭代器時,每一筆資料也是使用 fetchone() 取得





