sql >> Databasteknik >  >> RDS >> PostgreSQL

unik indexöverträdelse under uppdatering

Unika index utvärderas per rad inte per sats (vilket är t.ex. annorlunda än Oracles implementering)

Lösningen på detta problem är att använda en unik begränsning som kan skjutas upp och därmed utvärderas i slutet av transaktionen.

istället för det unika indexet, definiera en begränsning:

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



  1. städer och avstånd efter latitud-longitud

  2. MySQL LIKE + php sprintf

  3. Finns det något sätt att återställa efter commit i MySQL?

  4. Kan inte binda argument vid index 2 eftersom indexet ligger utanför intervallet