好的,下面是一个示例 MySQL 工具类的代码:
import pymysql
class MySQLUtil:
def __init__(self, host, user, password, database):
self.conn = pymysql.connect(host=host, user=user, password=password, database=database)
self.cursor = self.conn.cursor()
def is_table_exists(self, table_name):
"""
判断数据表是否存在
"""
sql = "SHOW TABLES LIKE '{}'".format(table_name)
self.cursor.execute(sql)
return self.cursor.fetchone() is not None
def create_table(self, table_name, fields):
"""
创建数据表
"""
if self.is_table_exists(table_name):
return
field_str = ''
for field in fields:
field_str += "{} {},".format(field[0], field[1])
field_str = field_str[:-1] # 删除最后一个逗号
sql = "CREATE TABLE {} ({})".format(table_name, field_str)
self.cursor.execute(sql)
self.conn.commit()
def delete_table(self, table_name):
"""
删除数据表
"""
if not self.is_table_exists(table_name):
return
sql = "DROP TABLE {}".format(table_name)
self.cursor.execute(sql)
self.conn.commit()
def get_table_metadata(self, table_name):
"""
获取数据表元数据
"""
if not self.is_table_exists(table_name):
return None
sql = "DESCRIBE {}".format(table_name)
self.cursor.execute(sql)
return self.cursor.fetchall()
在使用这个工具类之前,需要先安装 pymysql
库,使用 pip install pymysql
命令安装。
使用方法:
```
创建 MySQLUtil 实例
mysql_util = MySQLUtil(host='localhost', user='root', password='', database='test')
判断数据表是否存在
print(mysql_util.is_table_exists('user'))
创建数据表
mysql_util.create_table('user', [('id