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

violación de índice único durante la actualización

Los índices únicos se evalúan por fila, no por declaración (que es, por ejemplo, diferente a la implementación de Oracle)

La solución a este problema es usar una restricción única que puede ser diferido y por lo tanto se evalúa al final de la transacción.

Así que en su lugar del índice único, defina una restricción:

alter table test add constraint test_idx_pos unique (pos)
  deferrable initially deferred;