• 将pandas的DataFrame数据写入MySQL数据库 + sqlalchemy


    将pandas的DataFrame数据写入MySQL数据库 + sqlalchemy

    [python] view plain copy
     
    print?
    1. import pandas as pd  
    2. from sqlalchemy import create_engine  
    3.   
    4. ##将数据写入mysql的数据库,但需要先通过sqlalchemy.create_engine建立连接,且字符编码设置为utf8,否则有些latin字符不能处理  
    5. yconnect = create_engine('mysql+mysqldb://root:password@localhost:3306/databasename?charset=utf8')  
    6. pd.io.sql.to_sql(thedataframe,'tablename', yconnect, schema='databasename', if_exists='append')  
    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字符不识别而报错

    转自 http://blog.csdn.net/biboshouyu/article/details/54139641

  • 相关阅读:
    1869六度分离
    1162Eddy's picture
    hdu2544
    3549Flow Problem
    1272小希的迷宫
    2112HDU Today(Dijkstra)
    1878欧拉回路
    hdu1116Play on Words
    2112HDU Today(SPFA)
    在程序中动态创建视图
  • 原文地址:https://www.cnblogs.com/honey01/p/7235019.html
Copyright © 2020-2023  润新知