Senior
Wie man in PostgreSQL eine Eindeutigkeitsbeschränkung für die Kombination von zwei Spalten hinzufügt, bei der die einzelnen Werte wiederholt werden können, aber die Paare nicht?
sobes.tech KI
Antwort von AI
In PostgreSQL wird zur Sicherstellung der Einzigartigkeit der Kombination von Werten zweier Spalten eine UNIQUE-Beschränkung auf dieses Spaltenpaar verwendet. Dies stellt sicher, dass jedes Wertepaar einzigartig ist, auch wenn einzelne Werte in den Spalten wiederholt werden können.
Beispiel für eine SQL-Abfrage:
ALTER TABLE dein_tabellenname
ADD CONSTRAINT unique_col1_col2 UNIQUE (spalte1, spalte2);
Wenn die Tabelle neu erstellt wird, kann die Einschränkung sofort angegeben werden:
CREATE TABLE dein_tabellenname (
id SERIAL PRIMARY KEY,
spalte1 TYP,
spalte2 TYP,
-- andere Spalten
CONSTRAINT unique_col1_col2 UNIQUE (spalte1, spalte2)
);
Auf diese Weise verhindert die Datenbank das Einfügen von Zeilen mit einer wiederholten Kombination von Werten in diesen beiden Spalten.