sql >> Base de Datos >  >> RDS >> PostgreSQL

disparador postgresql:deshabilite la confirmación automática y establezca el nivel de aislamiento

PostgreSQL no tiene una configuración que deshabilite la confirmación automática, excepto para SQL incorporado. Si intenta desactivar la confirmación automática en, por ejemplo, PSQL, verá algo como este error.

sandbox=# set autocommit=off;
ERROR:  SET AUTOCOMMIT TO OFF is no longer supported

En su lugar, utilice BEGIN para iniciar una transacción. En PostgreSQL, puede iniciar una transacción y establecer el nivel de aislamiento en una sola declaración. (Otras plataformas requieren varias declaraciones). Sintaxis básica para PostgreSQL 9.2 es

BEGIN [ WORK | TRANSACTION ] [ transaction_mode [, ...] ]

where transaction_mode is one of:

    ISOLATION LEVEL { SERIALIZABLE   | REPEATABLE READ | 
                      READ COMMITTED | READ UNCOMMITTED }
    READ WRITE | READ ONLY
    [ NOT ] DEFERRABLE

Finalice la transacción con COMMIT o ROLLBACK.