【发布时间】:2018-08-06 07:04:52
【问题描述】:
是否可以将 python 数据框值插入数据库表列?
我使用雪花作为我的数据库。
CommuteTime 是包含 StudentID 列的表。 “add_col”是 python 数据框。我需要将 df 值插入 StudentID 列。
以下是我尝试将 df 值插入表列的代码。
c_col = pd.read_sql_query('insert into "SIS_WIDE"."PUBLIC"."CommuteTime" ("StudentID") VALUES ("add_col")', engine)
当我执行上述操作时,它不接受数据框。它抛出以下错误。
ProgrammingError: (snowflake.connector.errors.ProgrammingError) 000904 (42000): SQL compilation error: error line 1 at position 68
invalid identifier '"add_col"' [SQL: 'insert into "SIS_WIDE"."PUBLIC"."CommuteTime" ("StudentID") VALUES ("add_col")']
(Background on this error at: http://sqlalche.me/e/f405)
请提供解决此问题的建议..
【问题讨论】:
-
当然不能使用
pd.read_sql_query。那是为了从 SELECT 语句的结果创建一个数据框。数据帧上有一个to_sql方法,但这会(尝试)将数据帧作为表格插入。如果您真的想按照查询建议将整个数据框作为单个属性插入到单个记录中,则必须手动执行此操作。
标签: python sql snowflake-cloud-data-platform