Sobes.tech
Junior — Middle

Կարող եք բացատրել, թե ինչ է նշանակում մեկի հետ մեկ հարաբերությունը տվյալների բազաներում?

sobes.tech AI

Պատասխան AI-ից

Տվյալների բազաներում "մեկին մեկին" հարաբերությունը նշանակում է, որ մեկ աղյուսակում գրանցված յուրաքանչյուր ռեկորդը համապատասխանում է միայն մեկ ռեկորդի մյուս աղյուսակում, և հակառակը:

Օրինակ, ունեք Օգտագործողներ և Պրոֆիլներ աղյուսակները: Եթե յուրաքանչյուր օգտվող ունի միայն մեկ պրոֆիլ, և յուրաքանչյուր պրոֆիլ պատկանում է միայն մեկ օգտվողի, ապա այդ աղյուսակների միջև հաստատվում է մեկին մեկին հարաբերություն:

Այս հարաբերությունը սովորաբար իրականացվում է արտաքին բանալի միջոցով, որը սահմանափակում է միայնությունը, որպեսզի երաշխավորի կապի միայնությունը:

SQL-ում օրինակ՝

CREATE TABLE Օգտագործողներ (
    UserId INT PRIMARY KEY,
    UserName VARCHAR(100)
);

CREATE TABLE Պրոֆիլներ (
    ProfileId INT PRIMARY KEY,
    UserId INT UNIQUE,
    Bio TEXT,
    FOREIGN KEY (UserId) REFERENCES Օգտագործողներ(UserId)
);

Այստեղ, UserIdՊրոֆիլներ աղյուսակում, որը սահմանափակված է որպես UNIQUE, ապահովում է, որ մեկ օգտվողին կարող է համապատասխանել ոչ ավելին, քան մեկ պրոֆիլ։