try:
connection = psycopg2.connect(**postgres_credentials())
cursor = connection.cursor()
records = [(1,'FOO'),(2,'SPAM')]
placeholders = ','.join(['%s']*len(records)) # => '%s,%s'
sql = f"""
INSERT INTO schema.table(id, field)
VALUES {placeholders}
"""
# Mogrify helpful to debug command sent to DB bc transforms command into human readable form.
# It's not necessary. Could just use executemany, but slower & harder to debug command as SO suggests.
insert_statement = cursor.mogrify(sql, records)
# print(insert_statement.decode('utf-8'))
cursor.execute(insert_statement)
# cursor.executemany(sql, records) # SLOW bc executes and commits each record one at a time.
# print(cursor.mogrify(sql, records).decode('utf-8'))
connection.commit()
except psycopg2.DatabaseError:
raise
finally:
if not connection.closed:
cursor.close()
connection.close()
Forgot your account's password or having trouble logging into your Account? Don't worry, we'll help you to get back your account. Enter your email address and we'll send you a recovery link to reset your password. If you are experiencing problems
resetting your password contact us
Check Your Email and Click on the link sent to your email