公司中有时候我们的需求是操作mysql数据库中的数据,如果我们能用pandas直接操作mysql的话,就比较方便了
因此在这里给大家分享一下,pandas对mysql数据库的读写操作:
pandas读取mysql数据库:
[Python] 纯文本查看 复制代码 # 导入必要模块
import pandas as pd
from sqlalchemy import create_engine
# 初始化数据库连接,使用pymysql模块
# MySQL的用户:root, 密码:147369, 端口:3306,数据库:mydb
engine = create_engine('mysql+pymysql://root:mysql@localhost:3306/pandas')
# 查询语句,选出employee表中的所有数据
sql = '''
select * from mydf;
'''
# read_sql_query的两个参数: sql语句, 数据库连接
df = pd.read_sql_query(sql, engine)
# 输出employee表的查询结果
print(df)
pandas写入数据到mysql:
[Python] 纯文本查看 复制代码 # 新建pandas中的DataFrame, 只有id,num两列
df = pd.DataFrame({'id':[1,2,3,4],'num':[12,34,56,89]})
# 将新建的DataFrame储存为MySQL中的数据表,不储存index列
df.to_sql('mydf', engine, index= False)
print('Read from and write to Mysql table successfully!')
pandas读取csv数据到mysql中:
[Python] 纯文本查看 复制代码 # 读取本地CSV文件
df = pd.read_csv("lianjia.csv", sep=',')
# # 将新建的DataFrame储存为MySQL中的数据表,不储存index列
df.to_sql('mydata', engine, index= False)
|