@vicenta_kertzmann
Есть несколько способов для быстрой вставки записей в PostgreSQL на Python:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
from psycopg2.extras import execute_values
import psycopg2
conn = psycopg2.connect(dbname="your_db_name", user="your_username",
password="your_password", host="your_hostname", port="your_port")
cur = conn.cursor()
insert_query = "INSERT INTO your_table_name (column_1, column_2, column_3) VALUES %s"
data = [("value_1", "value_2", "value_3"), ("value_4", "value_5", "value_6")]
execute_values(cur, insert_query, data)
conn.commit()
cur.close()
conn.close()
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
import psycopg2
conn = psycopg2.connect(dbname="your_db_name", user="your_username",
password="your_password", host="your_hostname", port="your_port")
cur = conn.cursor()
insert_query = "INSERT INTO your_table_name (column_1, column_2, column_3) VALUES (%s, %s, %s)"
data = [("value_1", "value_2", "value_3"), ("value_4", "value_5", "value_6")]
cur.executemany(insert_query, data)
conn.commit()
cur.close()
conn.close()
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
import psycopg2
from io import StringIO
conn = psycopg2.connect(dbname="your_db_name", user="your_username",
password="your_password", host="your_hostname", port="your_port")
cur = conn.cursor()
insert_query = "COPY your_table_name (column_1, column_2, column_3) FROM STDIN WITH CSV"
data = StringIO()
data.write('value_1,value_2,value_3
')
data.write('value_4,value_5,value_6
')
data.seek(0)
cur.copy_from(data, 'your_table_name', sep=',')
conn.commit()
cur.close()
conn.close()
|
Каждый из этих методов имеет свои преимущества и ограничения, поэтому выбор конкретного способа зависит от требований вашей задачи.