pandas读取/存储数据到mysql中
2019-12-25 本文已影响0人
戈小蓓
存储dataFrame数据到数据库中【to_sql】
pandas,读取或存储DataFrames的数据到mysql中
命令符安装好:pip install pymysql
安装依赖的包:
pip install pandas
pip install sqlalchemy
pip install pymysql
导入必要模块
import pandas as pd
from sqlalchemy import create_engine
初始化数据库连接,使用pymysql模块
db_info = {'user': 'root',
'password': '123456',
'host': 'localhost',
'port': 3306,
'database': 'test'
}
engine = create_engine('mysql+pymysql://%(user)s:%(password)s@%(host)s:%(port)d/%(database)s?charset=utf8' % db_info, encoding='utf-8')
直接使用下一种形式也可以
engine = create_engine('mysql+pymysql://root:123456@localhost:3306/test')
读取本地CSV文件
df = pd.read_csv("C:/Users/fuqia/Desktop/example.csv", sep=',')
print(df)
将新建的DataFrame储存为MySQL中的数据表,不储存index列(index=False)
if_exists:
1.fail:如果表存在,啥也不做
2.replace:如果表存在,删了表,再建立一个新表,把数据插入
3.append:如果表存在,把数据插入,如果表不存在创建一个表
pd.io.sql.to_sql(df, 'example', con=engine, index=False, if_exists='replace')
df.to_sql('example', con=engine, if_exists='replace')这种形式也可以
print("Write to MySQL successfully!")
image.png