Senior
Ako v PostgreSQL pridať obmedzenie jedinečnosti na kombináciu dvoch stĺpcov, kde jednotlivé hodnoty sa môžu opakovať, ale páry — nie?
sobes.tech AI
Odpoveď od AI
V PostgreSQL-u, za zabezpečenie jedinečnosti kombinácie hodnôt dvoch stĺpcov sa používa obmedzenie UNIQUE na tento pár stĺpcov. To zabezpečuje, že každý pár hodnôt bude jedinečný, aj keď sa jednotlivé hodnoty v stĺpcoch môžu opakovať.
Príklad SQL dotazu:
ALTER TABLE vaše_meno_tabulky
ADD CONSTRAINT unique_col1_col2 UNIQUE (stĺpec1, stĺpec2);
Ak sa tabuľka vytvára od začiatku, je možné okamžite špecifikovať obmedzenie:
CREATE TABLE vaše_meno_tabulky (
id SERIAL PRIMARY KEY,
stĺpec1 TYP,
stĺpec2 TYP,
-- ďalšie stĺpce
CONSTRAINT unique_col1_col2 UNIQUE (stĺpec1, stĺpec2)
);
Týmto spôsobom databáza nedovolí vkladanie riadkov s opakujúcou sa kombináciou hodnôt v týchto dvoch stĺpcoch.