जिस तरह से आपने अपनी अनुक्रमणिका नामित की है, मुझे लगता है कि आपके पास उन स्तंभों पर कोई बाधा नहीं है, लेकिन एक UNIQUE INDEX
है :
CREATE TABLE T (a INT PRIMARY KEY, b INT, c INT);
CREATE UNIQUE INDEX u ON t(b);
INSERT INTO T (a, b, c)
VALUES (1, 2, 3)
ON CONFLICT ON CONSTRAINT u
DO UPDATE SET c = 4
RETURNING *;
उपरोक्त उत्पादन करता है:
[42704]: ERROR: constraint "u" for table "t" does not exist
हालांकि, इंडेक्स को एक बाधा में बदल दें:
DROP INDEX u;
ALTER TABLE t ADD CONSTRAINT u UNIQUE (b);
और INSERT
कथन अब काम करता है।
अद्वितीय बाधाओं और अद्वितीय अनुक्रमणिकाओं के बीच अंतर के बारे में यहां स्पष्टीकरण देखें . यह वास्तव में jOOQ से संबंधित नहीं है