使用 MySQLdb 訪問 MySQL 資料庫
你需要做的第一件事是使用 connect 方法建立與資料庫的連線。之後,你將需要一個將與該連線一起執行的遊標。
使用遊標的 execute 方法與資料庫互動,並且每隔一段時間使用連線物件的 commit 方法提交更改。
一切都完成後,不要忘記關閉游標和連線。
這是一個 Dbconnect 類,包含你需要的所有內容。
import MySQLdb
class Dbconnect(object):
def __init__(self):
self.dbconection = MySQLdb.connect(host='host_example',
port=int('port_example'),
user='user_example',
passwd='pass_example',
db='schema_example')
self.dbcursor = self.dbconection.cursor()
def commit_db(self):
self.dbconection.commit()
def close_db(self):
self.dbcursor.close()
self.dbconection.close()
與資料庫互動很簡單。建立物件後,只需使用 execute 方法。
db = Dbconnect()
db.dbcursor.execute('SELECT * FROM %s' % 'table_example')
如果要呼叫儲存過程,請使用以下語法。請注意,引數列表是可選的。
db = Dbconnect()
db.callproc('stored_procedure_name', [parameters] )
查詢完成後,你可以通過多種方式訪問結果。遊標物件是一個生成器,可以獲取所有結果或迴圈。
results = db.dbcursor.fetchall()
for individual_row in results:
first_field = individual_row[0]
如果你想直接使用生成器迴圈:
for individual_row in db.dbcursor:
first_field = individual_row[0]
如果要提交對資料庫的更改:
db.commit_db()
如果要關閉遊標和連線:
db.close_db()