PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Was bedeutet Autocommit in postgresql und psycopg2?

Jede PostgreSQL-Anweisung wird in einer Transaktion ausgeführt.

PostgreSQL selbst nur kennt den Autocommit-Modus, was bedeutet, dass jede Anweisung in einer eigenen Transaktion ausgeführt wird, wenn Sie nicht explizit eine Transaktion starten.

Anweisungen wie VACUUM kann nicht in derselben Transaktion mit anderen Anweisungen ausgeführt werden.

Wenn Sie Autocommit in psycopg2 nicht verwenden, muss der Treiber den Nicht-Autocommit-Modus simulieren, indem er explizit eine Transaktion startet, wenn die erste Anweisung ausgeführt wird.