准备:连接MySQL数据库所需的第三方包pymysql、sqlalchemy(pip安装即可)
方法一:
from sqlalchemy import create_engine engine = create_engine("mysql+pymysql://{}:{}@{}/{}?charset={}".format('用户名', '登录密码', '127.0.0.1:3306', '数据库名','字符编码')) con = engine.connect()#创建连接 df.to_sql(name='report', con=con, if_exists='append', index=False)
方法二:
from sqlalchemy import create_engine engine = create_engine("mysql+pymysql://用户名:密码@localhost:3306/数据库名?charset=字符编码") df.to_sql(name='report', con=engine, if_exists='append', index=False)
to_sql的几个参数:
- name是表名
- con是连接
- if_exists:表如果存在怎么处理
- append:追加
- replace:删除原表,建立新表再添加
- fail:什么都不干
- index=False:不插入索引index
无论那种方法创建的表始终为latin1类型,然后改数据库参数character_set_server=utf8,还是没有用,最终先创建表,再使用改方式将数据插入MySQL数据库中