Junior
Cədvəldə əlaqə niyə lazımdır?
sobes.tech Süni İntellekt
AI-dan cavab
Verilənlər bazasında cədvəllər arasındakı əlaqə və ya əlaqə aşağıdakılar üçün vacibdir:
- Məlumatların təkrarlanmasının qarşısını almaq: Məlumatların bir neçə cədvəldə təkrarlanması yerinə, onlar birində saxlanılır və digər cədvəllər ona istinad edir. Bu, yer qənaət edir və yeniləmələri sadələşdirir.
- Məlumatların bütövlüyünü təmin etmək: Əlaqələr məlumatların ardıcıllığını qorumağa kömək edir. Məsələn, başqa bir cədvəl ona istinad edən sətiri silə bilməzsiniz (məhdudiyyət növündən asılı olaraq).
- Sorğuları sadələşdirmək: JOIN əməliyyatlarından istifadə etməklə, bir neçə cədvəldən əlaqəli məlumatları asanlıqla çıxarmağa imkan verir.
- Verilənlər bazasının strukturunu yaratmaq: Bu, real dünya varlıqları arasındakı məntiqi əlaqəni əks etdirir və verilənlər bazasının strukturunu daha anlaşılan və təşkilatlanmış edir.
Əlaqə növlərinin nümunələri:
- Bir-bir (One-to-one): A cədvəlindəki bir sətir yalnız B cədvəlindəki bir sətirlə əlaqəlidir və əksinə.
- Bir-çox (One-to-many): A cədvəlindəki bir sətir B cədvəlindəki bir neçə sətirlə əlaqələndirilə bilər, lakin B-dəki bir sətir yalnız A-dəki bir sətirlə əlaqəlidir.
- Çox-çox (Many-to-many): A cədvəlindəki bir sətir B cədvəlindəki bir neçə sətirlə əlaqələndirilə bilər və əksinə. Bu, adətən, aralıq cədvəl vasitəsilə həyata keçirilir.
SQL nümunəsi ilə tətbiq:
CREATE TABLE müştərilər (
müştəri_id INT PRIMARY KEY,
ad VARCHAR(255)
);
CREATE TABLE sifarişlər (
sifariş_id INT PRIMARY KEY,
sifariş_tarixi DATE,
müştəri_id INT,
FOREIGN KEY (müştəri_id) REFERENCES müştərilər(müştəri_id) // "bir-çox" əlaqəsi: bir müştərinin çox sifarişi ola bilər
);