Eftersom detta är det bästa Google-resultatet för fel:
ON CONFLICT DO UPDATE command cannot affect row a second time
Jag kommer att tillägga att det kan orsakas av en duplicerad konflikt VÄRDEN , t.ex.
INSERT INTO distributors (did, dname)
VALUES
(5, 'Gizmo Transglobal'),
(5, 'Associated Computing, Inc')
ON CONFLICT (did) DO UPDATE SET dname = EXCLUDED.dname;
I det här fallet försöker vi infoga två värden med dim
inställd på 5
. Som dim
är det index som det inte kan ha konflikt i själva frågan.
Jag stötte på det här felet när jag implementerade mikrotjänster och bearbetningsförfrågningar, några av dem har dubbletter.