Psycopg2 ---插入一个数组

时间:2017-04-27 08:55:03

标签: python arrays psycopg2

我有一个变量数组(arr),我想插入我的数据库,我在那里使用Psycopg2。我插入的数组有45个条目。我现在正在运行的代码如下:

string = ''
for i in range(0, length):
    string = string + "%s, "
string = string[:-2]

query = """
    INSERT INTO schema.tablename
    VALUES (%s)"""
query = query.replace("%s", string)
cur.execute(query, (arr, ))

我想避免显式编写列,因为我正在使用的表可能会更改(添加列/删除列)。上面的代码给出了错误:

IndexError: tuple index out of range

我该怎么做?

1 个答案:

答案 0 :(得分:2)

您是否尝试过executemany功能?

cur.executemany("INSERT INTO table VALUES(%s,%s,%s,%s,%s,%s,%s,%s,%s)", tup)