PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

ERREUR:la valeur de clé en double viole la contrainte unique dans postgreSQL

http://www.postgresql.org/docs/9.0/static /sql-createtable.html dans la section "Contraintes d'unicité non différées" - "Lorsqu'une contrainte UNIQUE ou PRIMARY KEY n'est pas différée, PostgreSQL vérifie l'unicité immédiatement chaque fois qu'une ligne est insérée ou modifiée."

Changer votre contrainte unique en reportable retardera la vérification jusqu'à la fin de la mise à jour. Utilisez SET CONSTRAINTS pour désactiver au niveau de la session (ce qui est ennuyeux et répétitif) ou supprimez et recréez la contrainte d'unicité avec l'option deferrable (je ne connais pas de construction ALTER pour le faire sans suppression).