Senior
Ինչպես ավելացնել PostgreSQL-ում միավորության սահմանափակում երկու սյունակների համադրության վրա, որտեղ առանձին արժեքները կարող են կրկնվել, բայց զույգերը — ոչ?
sobes.tech AI
Պատասխան AI-ից
PostgreSQL-ում, երկու սյունակների արժեքների համադրության եզակիությունը ապահովելու համար, այս սյունակների զույգի վրա կիրառվում է UNIQUE սահմանափակումը: Սա ապահովում է, որ յուրաքանչյուր արժեքների զույգը կլինի եզակի, նույնիսկ եթե սյունակների առանձին արժեքները կրկնվեն:
SQL հարցումի օրինակ:
ALTER TABLE ձեր_սեղանի_անուն
ADD CONSTRAINT unique_col1_col2 UNIQUE (սյունակ1, սյունակ2);
Եթե սեղանը ստեղծվում է զրոյից, սահմանափակումը կարելի է անմիջապես նշել:
CREATE TABLE ձեր_սեղանի_անուն (
id SERIAL PRIMARY KEY,
սյունակ1 TYP,
սյունակ2 TYP,
-- այլ սյունակներ
CONSTRAINT unique_col1_col2 UNIQUE (սյունակ1, սյունակ2)
);
Այսպիսով, տվյալների բազան չի թույլատրի կրկնվող արժեքներով տողեր ավելացնել այս երկու սյունակներում։