• 将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

  • 相关阅读:
    【GitHub】上传代码通用操作等(附下载单个文件夹或文件)
    【Git】之分支合并命令
    【FFmpeg】之Mac系统爬取所有M3U8视频下载方法
    i2c超时
    linux下串口调试
    cgminer分析
    i2c驱动理解
    STM32(三十七)SPI读取W25Q128flash的厂商ID、设备ID以及读写数据(硬件SPI)
    驱动静态和动态加载
    I2C基本原理及对I2C Adapter的理解
  • 原文地址:https://www.cnblogs.com/honey01/p/7235019.html
Copyright © 2020-2023  润新知