import pandas as pd
from sqlalchemy import create_engine
##将数据写入mysql的数据库,但需要先通过sqlalchemy.create_engine建立连接,且字符编码设置为utf8,否则有些latin字符不能处理
yconnect = create_engine('mysql+mysqldb://root:password@localhost:3306/databasename?charset=utf8')
pd.io.sql.to_sql(thedataframe,'tablename', yconnect, schema='databasename', if_exists='append')
to_sql中,
第一个参数thedataframe
是需要导入的pd dataframe,
第二个参数tablename
是将导入的数据库中的表名
第三个参数yconnect
是启动数据库的接口,pd 1.9以后的版本,除了sqllite,均需要通过sqlalchemy
来设置
第四个参数databasename
是将导入的数据库名字
第五个参数if_exists='append'
的意思是,如果表tablename
存在,则将数据添加到这个表的后面
sqlalchemy.create_engine
是数据库引擎
(‘mysql+mysqldb://root:password@localhost:3306/databasename?charset=utf8’)的解释
mysql
是要用的数据库
mysqldb
是需要用的接口程序
root
是数据库账户
password
是数据库密码
localhost
是数据库所在服务器的地址,这里是本机
3306
是mysql占用的端口
elonuse
是数据库的名字
charset=utf8
是设置数据库的编码方式,这样可以防止latin字符不识别而报错