【问题标题】:Load dataframe to oracle db using python使用 python 将数据帧加载到 oracle db
【发布时间】:2020-09-01 05:01:23
【问题描述】:

我是 Python 新手,正在尝试编写代码以进一步了解它。 我有一张费用表,它不是结构化的,我使用 python 设法提取、清理并将所需数据加载到 Excel 表中。

Data loaded in Excel

我想在 oracle db 中加载相同的数据,而不是在 excel 文件中加载。 我最初尝试使用 cx_Oracle,后来改用 sqlalchemy,这可能会有所帮助

'df.to_sql('AB_EXPENSE',con,if_exists = 'append',index=False)'

但是当我执行此操作时,我看到下面的错误,在我看来,它也将标题作为要加载到表中的值

Error while loading to db

我已经在 db 中创建了表,其 cols 与 dataframe 中的相同,我所需要的只是将数据单独从 Dataframe 加载/附加到 db 中的相应 cols。

数据类型:

Oracle Table dtype

DF dtype

【问题讨论】:

  • 请使用代码df.dtypes检查您的数据框中存在哪些数据类型。并通过describe AB_EXPENSE查看sql表中的列类型
  • @Vad1m 在主帖中添加了数据类型屏幕截图..

标签: python


【解决方案1】:

SQL 表和 pandas df 之间的“年份”列中的数据类型不一致。上传数据前输入:

df.loc[:,'YEARS']=df.loc[:,'YEARS'].astype('int')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 2021-10-02
    • 2012-02-19
    • 2019-09-08
    相关资源
    最近更新 更多