Da dette er det øverste Google-resultat for fejl:
ON CONFLICT DO UPDATE command cannot affect row a second time
Jeg vil tilføje, at det kan være forårsaget af en dublet konflikt VALUES , f.eks.
INSERT INTO distributors (did, dname)
VALUES
(5, 'Gizmo Transglobal'),
(5, 'Associated Computing, Inc')
ON CONFLICT (did) DO UPDATE SET dname = EXCLUDED.dname;
I dette tilfælde forsøger vi at indsætte to værdier med dim
indstillet til 5
. Som dim
er det indeks, det ikke kan have konflikt i selve forespørgslen.
Jeg stødte på denne fejl, da jeg implementerede mikroservice- og behandlingsanmodninger, nogle af dem havde duplikerede poster.