zoukankan      html  css  js  c++  java
  • pandas to_sql

    实例:

    import pymysql
    import pandas as pd
    import numpy as np
    
    from sqlalchemy import create_engine
    
    df = pd.DataFrame([[1,"Bob",0],
                      [2,"Kim",1]],columns=["id","name","sex"])
    df
    
    id	name	sex
    0	1	Bob	0
    1	2	Kim	1
    
    from sqlalchemy import create_engine
    engine = create_engine("mysql://{}:{}@{}/{}?charset=utf8".format('username','password','host:port', 'database'))
    con = engine.connect()
    
    df.to_sql(name='students', con=con, if_exists='append', index=False)
    

     若表不存在,创建字段都是text,bigint等

      

    df.to_sql参数介绍:

    name:string

    SQL表的名称。

    con:sqlalchemy.engine.Engine或sqlite3.Connection

    使用SQLAlchemy可以使用该库支持的任何数据库。为sqlite3.Connection对象提供了旧版支持。

    schema:string,optional

    指定架构(如果数据库flavor支持此)。如果为None,请使用默认架构。

    if_exists:{'fail','replace','append'},默认'fail'

    如果表已存在,如何表现。

    • 失败:引发ValueError。
    • replace:在插入新值之前删除表。
    • append:将新值插入现有表。

    index:布尔值,默认为True

    将DataFrame索引写为列。使用index_label作为表中的列名。

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

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

    chunksize:int,可选

    行将一次批量写入此大小。默认情况下,所有行都将立即写入。

    dtype:dict,可选

    指定列的数据类型。键应该是列名,值应该是SQLAlchemy类型或sqlite3传统模式的字符串。

  • 相关阅读:
    Linux ls
    Linux wc | 简单的字符数行数统计工具
    Linux less | 功能丰富的终端文本浏览器
    POSIX正则表达式 | BRE和ERE
    docker连不上私有仓库Harbor
    血泪史: k8s Initial timeout of 40s passed.
    无法访问k8s.gcr.io下载镜像问题解决办法
    Galera_Cluster_Mysql部署
    解决MobaXterm自动断开连接,亲测有效~
    Ubuntu使用dpkg查看与修改architecture的用法
  • 原文地址:https://www.cnblogs.com/zenan/p/10176767.html
Copyright © 2011-2022 走看看