【发布时间】:2017-09-22 02:17:51
【问题描述】:
我正在尝试使用带有 Psychopg2 的 Python 脚本将 Excel 电子表格插入 Postgres 数据库。
问题不是所有的电子表格都有相同的列数,我需要插入语句足够灵活,这样我就不必按名称指定它们。
我的方法是将电子表格标题行的列加载到一个元组中,同样的还有插入的值。比如:
sql = ''''INSERT INTO my_table (%s) VALUES (%s);'''
cur.execute(sql, (cols, vals))
其中 'cols' 和 'vals' 都是元组。
'cols' 可以有 7、9、10 等条目,同样取决于电子表格的列数。
当我尝试运行它时,我得到:
psycopg2.ProgrammingError: syntax error at or near "'INSERT INTO my_table
(ARRAY['"
LINE 1: 'INSERT INTO my_table...
^
不确定问题出在我的调用语法中,还是您根本无法做我想做的事情。
【问题讨论】:
标签: python sql parameterized