zoukankan      html  css  js  c++  java
  • Python 通过Pandas DataFrame 对execl文件自动创表

    pandas.DataFrame.to_sql 

    DataFrame.to_sql(nameconflavor=Noneschema=Noneif_exists='fail'index=Trueindex_label=Nonechunksize=Nonedtype=None)[source]

    将存储在DataFrame中的记录写入SQL数据库。
    参数:

    name:string

    SQL表的名称

    con:SQLAlchemy引擎或DBAPI2连接(传统模式)

    使用SQLAlchemy可以使用该库支持的任何数据库。如果是DBAPI2对象,则只支持sqlite3。

     http://docs.sqlalchemy.org/en/latest/core/engines.html

    flavor:'sqlite',默认无

    DEPRECATED:此参数将在以后的版本中被删除,因为如果未安装SQLAlchemy,'sqlite'是唯一支持的选项。

    schema:string,default无

    指定模式(如果数据库风格支持此模式)。如果没有,请使用默认模式。

    if_exists:{'fail','replace','append'},default'fail '

    • fail:如果表存在,不做任何事情。
    • replace:如果表存在,请将其删除,重新创建并插入数据。
    • append:如果表存在,请插入数据。创建如果不存在。

    index:boolean,default为True

    将DataFrame索引作为列编写。

    index_label:字符串或序列,默认为无

    索引列的列标签。如果给定None(默认),并且 index为True,则使用索引名称。如果DataFrame使用MultiIndex,则应该给出一个序列。

    chunksize:int,default None

    如果不是None,那么行将一次写入这个大小的批次。如果没有,所有行将一次写入。

    dtype:列名称为SQL类型,默认为无

    可选指定列的数据类型。SQL类型应为SQLAlchemy类型,或sqlite3后备连接的字符串。

     创建DataFrame对象

    http://www.cnblogs.com/nxld/p/6756492.html

    chunksize参数的方式来进行大批量插入,pandas会自动将数据拆分成chunksize大小的数据块进行批量插入,其实原理类似于我在上面使用的循环插入法.在不指定这个参数的时候,pandas会一次性插入dataframe中的所有记录,

    pd.io.sql.to_sql(df,'xxx',zh_con,flavor='mysql',if_exists='append',index=False,chunksize=10000)
    #此处的chunksize可以自定义
  • 相关阅读:
    Flutter-动画-原理篇
    Flutter-动画-实践篇
    Flutter-动画-概念篇
    Android-textview图文混排(网络图片)
    Android--解决图片保存到相册显示1970年1月1日 8:00的问题
    Android--使用JobService实现进程保活
    Android--获取手机联系人和Sim卡联系人
    git 代码服务器的网页版gitweb的搭建
    Android 内存管理中的 Shallow heap Retained heap
    欧几里德算法----最大公约数算法
  • 原文地址:https://www.cnblogs.com/Jonecmnn/p/7660231.html
Copyright © 2011-2022 走看看