Ich möchte eine Tabelle in PostgreSQL so einrichten, dass zwei Spalten zusammen eindeutig sein müssen. Es kann mehrere Werte für einen der beiden Werte geben, solange es nicht zwei gibt, die beide Werte gemeinsam haben.
Zum Beispiel:
CREATE TABLE someTable (
id int PRIMARY KEY AUTOINCREMENT,
col1 int NOT NULL,
col2 int NOT NULL
)
Also, col1
y col2
können sich wiederholen, aber nicht zur gleichen Zeit. Also, dies wäre erlaubt (ohne die ID)
1 1
1 2
2 1
2 2
aber nicht das:
1 1
1 2
1 1 -- would reject this insert for violating constraints