PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

нарушение на уникален индекс по време на актуализация

Уникалните индекси се оценяват за ред, а не за израз (което е например различно от изпълнението на Oracle)

Решението на този проблем е да се използва уникално ограничение който може да бъде отложен и по този начин се оценява в края на сделката.

Така чевместо на уникалния индекс, дефинирайте ограничение:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. postgres:получаване на изпълнима заявка от заявка с параметри

  2. Изпълнение на множество екземпляри на PostgreSQL на един хост

  3. local postgres db продължава да дава грешка дублирана стойност на ключ нарушава уникалното ограничение

  4. Грешка при създаването на SEQUENCE при възстановяване на базата данни PostgreSQL

  5. Фактор на запълване за последователен индекс, който е PK