【Python小白】使用python获取mysql数据
2018-09-05 本文已影响0人
FLYNNNOTES
使用数据库可以方便的查看和处理数据,但如果同时想实现数据可视化,则要借助python的功能。使用python的第三方库可以很方便的连接数据库,进行数据的查看、处理、提取等操作。
TIPS
- 这里使用
pymysql
库,连接数据库。 - 在连接数据库时, 要加上
charset='utf8'
,避免'latin-1 can't encode character...'
等报错问题,注意这里是'utf8'
!(简书不能改字体颜色,Orz。。。) -
cursor.execute(sql)
的结果只能获取数据,要想获取数字库字段,需要使用cursor.description
。 - 读取的数据是tuple类型,需要转换成方便分析操作的DataFrame类型,使用
pd.DataFrame(list(result))
import pandas as pd
import pymysql
# 连接数据库
# 加上charset='utf8',避免 'latin-1' encoding 报错等问题
conn = pymysql.connect(host='IP/connect_name', user='user_name', passwd='password',
db='database_name', charset='utf8')
# 创建cursor
cursor = conn.cursor()
sql = 'SELECT * FROM table_name;'
# 执行sql语句
cursor.execute(sql)
# 获取数据库列表信息
col = cursor.description
# 获取全部查询信息
re = cursor.fetchall()
# 获取一行信息
# re = cursor.fetchone()
# 获取的信息默认为tuple类型,将columns转换成DataFrame类型
columns = pd.DataFrame(list(col))
# 将数据转换成DataFrame类型,并匹配columns
df = pd.DataFrame(list(re), columns=columns[0])