Вы можете использовать executemany
в PSQL для одновременной вставки нескольких записей следующим образом:
conn=psycopg2.connect("dbname='db_name' user='db_user' password='db_pass'")
data = [{"col1":"data11", "col2":"data21"},
{"col1":"data12", "col2":"data22"},
{"col1":"data13", "col2":"data23"}]
cur = conn.cursor()
cur.executemany("""INSERT INTO bar(col1,col2) VALUES (%(col1)s, %(col2)s)""", data)
Если у вас нет структуры dict
, вам необходимо убедиться, что данные находятся в правильной последовательности ваших столбцов в таблице как:
cur.executemany(
"""INSERT INTO bar(col1,col2)
VALUES (%s,%s)""", data)
и данные должны быть в формате:
data = [['data11', 'data21'], ['data12', 'data22']]
Это то, что вы пытаетесь сделать? Дайте мне знать, это работает.