使用 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()