在Python中,可以使用MySQLdb库来对MySQL数据库进行封装。以下是一个简单的MySQL类封装示例:
import MySQLdb
from MySQLdb.cursors import DictCursor
class MySQL:
def __init__(self, host, db, user, passwd, charset='utf8'):
self.host = host
self.db = db
self.user = user
self.passwd = passwd
self.charset = charset
self.connection = None
self.cursor = None
def connect(self):
self.connection = MySQLdb.connect(host=self.host, db=self.db, user=self.user, passwd=self.passwd, charset=self.charset, cursorclass=DictCursor)
self.cursor = self.connection.cursor()
def query(self, sql, args=()):
self.connect()
self.cursor.execute(sql, args)
result = self.cursor.fetchall()
self.connection.close()
return result
def get_one(self, sql, args=()):
self.connect()
self.cursor.execute(sql, args)
result = self.cursor.fetchone()
self.connection.close()
return result
def insert(self, sql, args=()):
self.connect()
self.cursor.execute(sql, args)
self.connection.commit()
self.connection.close()
def update(self, sql, args=()):
self.connect()
self.cursor.execute(sql, args)
self.connection.commit()
self.connection.close()
def delete(self, sql, args=()):
self.connect()
self.cursor.execute(sql, args)
self.connection.commit()
self.connection.close()
使用该类时,需要提供数据库的连接信息,并可以调用query
, get_one
, insert
, update
, delete
方法来执行SQL语句。这个类的实例化需要传递数据库的主机地址、数据库名、用户名、密码以及字符集。这个封装提供了连接管理,并且每次执行完SQL语句后都会关闭数据库连接。