OAK*_*OAK 5 python postgresql sqlalchemy psycopg2
我正在尝试使用与sqlalchemy一起使用的pscycopg2模块将数据帧插入到我的postgres数据库中.该过程将excel文件加载到pandas数据框中,然后通过预定义的表模式将数据框插入数据库.
我相信这些是相关的代码行:
post_meta.reflect(schema="users")
df = pd.read_excel(path)
table = sql.Table(table_name, post_meta, schema="users")
dict_items = df.to_dict(orient='records')
connection.execute(table.insert().values(dict_items))
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
<class 'sqlalchemy.exc.ProgrammingError'>, ProgrammingError("(psycopg2.ProgrammingError) can't adapt type 'numpy.int64'",)
Run Code Online (Sandbox Code Playgroud)
数据框中的所有数据字段类型都是int64.
我似乎无法找到类似的问题或信息,说明为什么会出现此错误及其含义.
任何方向都会很棒.谢谢
看起来您正在尝试插入 numpy 整数,而 psycopg2 不知道如何处理这些对象。您需要首先将它们转换为普通的 python 整数。也许尝试int()对每个值调用该函数...如果失败,请提供更多上下文和代码。
| 归档时间: |
|
| 查看次数: |
7626 次 |
| 最近记录: |