Back to questions
Junior — Middle
64
Каким образом осуществляется управление транзакциями в PostgreSQL?
Companies where asked
ООО УайтСнейк
Answer from AI
sobes.tech AI
В PostgreSQL управление транзакциями осуществляется с помощью команд SQL: BEGIN (начало транзакции), COMMIT (подтверждение изменений) и ROLLBACK (откат изменений). Транзакция — это последовательность операций, которая выполняется как единое целое. Если в процессе возникает ошибка, можно откатить все изменения.
В Python при работе с PostgreSQL через библиотеки, например psycopg2, транзакции обычно управляются автоматически или вручную:
import psycopg2
conn = psycopg2.connect(...)
cur = conn.cursor()
try:
conn.autocommit = False # отключаем автокоммит
cur.execute("INSERT INTO table_name (col) VALUES ('value')")
conn.commit() # подтверждаем транзакцию
except Exception as e:
conn.rollback() # откатываем при ошибке
print(f"Ошибка: {e}")
finally:
cur.close()
conn.close()
Также в современных версиях psycopg2 можно использовать контекстный менеджер для автоматического управления транзакциями.