用python写一个连mysql的帮助类
时间: 2023-03-02 20:43:56 浏览: 50
好的,下面是一个使用Python连接MySQL数据库的帮助类:
```python
import mysql.connector
class MySQLHelper:
def __init__(self, host, user, password, database):
self.host = host
self.user = user
self.password = password
self.database = database
self.connection = None
self.cursor = None
def connect(self):
self.connection = mysql.connector.connect(
host=self.host,
user=self.user,
password=self.password,
database=self.database
)
self.cursor = self.connection.cursor()
def execute(self, query, params=None):
self.cursor.execute(query, params)
def executemany(self, query, data):
self.cursor.executemany(query, data)
def fetchone(self):
return self.cursor.fetchone()
def fetchall(self):
return self.cursor.fetchall()
def commit(self):
self.connection.commit()
def rollback(self):
self.connection.rollback()
def disconnect(self):
self.cursor.close()
self.connection.close()
```
这个帮助类使用 `mysql-connector-python` 库连接到 MySQL 数据库。使用方法如下:
```python
helper = MySQLHelper('localhost', 'root', 'password', 'database')
helper.connect()
# 执行查询
helper.execute('SELECT * FROM my_table')
rows = helper.fetchall()
# 执行插入
query = 'INSERT INTO my_table (col1, col2) VALUES (%s, %s)'
data = [('value1', 'value2'), ('value3', 'value4')]
helper.executemany(query, data)
helper.commit()
helper.disconnect()
```
在实例化帮助类时,传入数据库的主机地址、用户名、密码和数据库名称。然后可以调用 `connect()` 方法连接到数据库。执行查询时,调用 `execute()` 方法,然后使用 `fetchone()` 或 `fetchall()` 方法获取结果。执行插入时,调用 `executemany()` 方法并传入要插入的数据列表和插入语句,最后调用 `commit()` 方法提交更改。最后,调用 `disconnect()` 方法关闭连接。