为了练习打包到 pypi,写了一个多线程版的快速读 sql 到 DataFrame(),写 sql 到 csv 以及快速迁移表的 pip 包。

2020-01-30 20:01:37 +08:00
 wuwukai007

带有进度条显示的 多线程快读快写 sql,快速迁移表的 python 包

项目地址:https://github.com/tosmart01/fastsql

一、安装
二、依赖环境
二、示例
import fast_sql
from sqlalchemy import create_engine
sql = "select * from test where id <1000000"
con = create_engine("oracle+cx_oracle://wuwukai:test@localhost:1521/helowin")
res = fast_sql.read_sql(sql,con,show_progress=True,thread_num=8)
res.head()

image:

三、参数说明
其他参数兼容 pandas read_sql,to_csv
sql: sql 语句
con: 数据库连接 sqlalchemy 连接对象 | sqlalchemy 连接字符串 | pymysql 连接对象
thread_num: 开启的线程数量
encoding: 编码
show_progress: 是否显示进度条
from_db: 数据源库
to_db: 目标库
if_exists: 目标库相同数据是否删除 delete append orthe(不做处理)
to_table: 目标库表名,默认与原始 sql 表名相同
mode: r > 读取 sql 序列化到本地
      w > 将序列化的文件入库
      rw > 从源库读取写入到目标库
file_path: 读取数据序列化路径
delete_cache: 是否删除迁移过程中缓存的序列化文件
to_columns: 指定目标库的列名,默认与原列名相同
    
2088 次点击
所在节点    Python
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/641065

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX