pymysql的使用-从数据库获取数据
一、pymysql从数据库获取数据
1.导入pymysql包
import pymysql
2.创建数据库连接
connect = pymysql.connect(host=host,port=port,user=dbuser,password=pwd,database=db)
注意:参数host、port、user、password、database需根据实际情况修改,port为整型,其他为字符型
3.创建游标对象
cursor = connect.cursor()
4.执行查询语句
cursor.execute("select * from table")
注意:查询语句中table指数据库中具体的数据表名
5.获取查询结果
cursor.fetchall() # 全量查询结果
cursor.fetchone() # 单条查询结果
6.关闭游标
cursor.close()
7.关闭与数据库的链接
connect.close()
二、封装类
class MysqlReader(object):
def __init__(self):
self.connect = pymysql.connect(host=host,port=port,user=dbuser,password=pwd,database=db)
def getData(self):
cursor = self.connect.cursor()
cursor.execute("select * from table")
q = cursor.fetchall()
cursor.close()
self.connect.close()
return q
将代码进行封装方便后续调用。
# 类调用
MR = MysqlReader()
q = MR.getData()
getData返回结果为元组,后续可通过以下方式转换成DataFrame
q = [list(i) for i in q]
df = pd.DataFrame(q, columns=range(len(q[0]))) # columns也可自定义