程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了有没有一种简单的方法可以在 Python 中逐表地将数据库数据从 SQLite 迁移到 Postgres?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_489_0@如何解决有没有一种简单的方法可以在 Python 中逐表地将数据库数据从 sqlite 迁移到 POSTGRes?? 开发过程中遇到有没有一种简单的方法可以在 Python 中逐表地将数据库数据从 sqlite 迁移到 POSTGRes?的问题如何解决?下面主要结合日常开发的经验,给出你关于有没有一种简单的方法可以在 Python 中逐表地将数据库数据从 sqlite 迁移到 POSTGRes?的解决方法建议,希望对你解决有没有一种简单的方法可以在 Python 中逐表地将数据库数据从 sqlite 迁移到 POSTGRes?有所启发或帮助;

在 Python 中是否有一种简单的方法可以逐表地从 sqlite 迁移到 POSTGRes?我正在使用 peewee,可以生成 sqlite 转储,但没有可用于导入 POSTGRes 的 psql。 Python 中有一个包吗?我也使用 peewee 作为 ORM 并且覆盖了生成模式位,问题是数据。

数据库有点大,1.3gb

@H_489_0@解决方法

你有很多选择。最简单的可能是使用 sqlite 的“.dump”sHell 命令来生成 SQL。有许多选项或方法可以做到这一点。您可以使用“.dump”来转储所有架构和数据,然后对转储文件进行任何修改,然后将其加载POSTGRes 中。

只是将表“my_table”的行数据转储为 CSV,您可以使用:

sqlite> .headers on
sqlite> .mode csv
sqlite> .output model_data.csv
sqlite> SELECT * FROM my_table;

然后您可以使用 POSTGRes 批量加载 CSV:

COPY table_name(col1,...)
FROM 'model_data.csv'
DELIMITER ','
CSV HEADER;

Peewee 可以以多种格式转储数据,所以这是一种选择:

@H_355_16@models = [User,Tweet]
for model in models:
    outfile = '%s.csv' % model._meta.table_name
    with open(outfile,'w',newline='') as f:
        writer = csv.writer(f)
        row_iter = model.SELEct().tuples().iterator()
        writer.writerows(row_iter)

另一种选择是使用 POSTGRes 外部数据包装器。然后连接到 psql db,使用 fdw 附加 SQLite 数据库,并使用 psql sHell 从一个直接复制到另一个。

https://github.com/pgspider/@R_622_5607@fdw

大佬总结

以上是大佬教程为你收集整理的有没有一种简单的方法可以在 Python 中逐表地将数据库数据从 SQLite 迁移到 Postgres?全部内容,希望文章能够帮你解决有没有一种简单的方法可以在 Python 中逐表地将数据库数据从 SQLite 迁移到 Postgres?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。