gpt4 book ai didi

python - 如何将 DataFrame 写入 postgres 表

转载 作者:IT老高 更新时间:2023-10-28 21:41:30 28 4
gpt4 key购买 nike

DataFrame.to_sql 方法,但它只适用于 mysql、sqlite 和 oracle 数据库。我无法将这种方法传递给 postgres 连接或 sqlalchemy 引擎。

最佳答案

从 pandas 0.14(2014 年 5 月末发布)开始,支持 postgresql。 sql 模块现在使用 sqlalchemy 来支持不同的数据库风格。您可以为 postgresql 数据库传递 sqlalchemy 引擎(参见 docs)。例如:

from sqlalchemy import create_engine
engine = create_engine('postgresql://username:password@localhost:5432/mydatabase')
df.to_sql('table_name', engine)

你说得对,在 pandas 中不支持 0.13.1 版本的 postgresql 是正确的。如果您需要使用旧版本的 pandas,这里是 pandas.io.sql 的补丁版本:https://gist.github.com/jorisvandenbossche/10841234 .
我之前写过这个,所以不能完全保证它总是有效的,但是基础应该在那里)。如果您将该文件放在您的工作目录中并导入它,那么您应该能够做到(其中 con 是一个 postgresql 连接):

import sql  # the patched version (file is named sql.py)
sql.write_frame(df, 'table_name', con, flavor='postgresql')

关于python - 如何将 DataFrame 写入 postgres 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23103962/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com