Python 使用pymysql查询sql后,数据处理转换并输出为集合对象
好久没写了,写个数据处理转换,以mysql为例,比较适用与新手学习。
import pymysql
class MysqlClass():
def __init__(self,host,user,password,database):
# 连接数据库 没啥东西
self.conn = pymysql.connect(
host=host, # 例如 'localhost'
user=user, # 例如 'root'
password=password, # 例如 'password'
database=database # 例如 'mydatabase'
)
def cursor_createSql(self, sql_run):
# 创建一个cursor对象用于执行SQL语句
cursor = self.conn.cursor()
# 执行sql
cursor.execute(sql_run)
# 下面为数据处理转换
column_names =[i[0] for i in cursor.description]
data_run = cursor.fetchall()
data_list = []
# 数据组装
for i,data_i in enumerate(data_run):
data_row = {}
for j,data_j in enumerate(data_i):
data_row[column_names[j]] = data_j
data_list.append(data_row)
cursor.close()
return data_list
def close(self):
# 使用完别忘记关闭连接
self.conn.close()
调用方式也很简单,
from 你对应的文件位置 import MysqlClass
mysql = MysqlClass(
host='127.0.0.1',
user='root',
password='123456',
database='channel_data'
)
# 需要写的sql,放里面,返回的就是处理转换的数据
message = mysql.cursor_createSql('select 你要返回的字段 from 你的表 where 你的查询条件')
# 别忘了关闭数据库连接
mysql.close()