ERD — bu Entity-Relationship Diagram (entiti və əlaqə diaqramı) sözünün qısaltmasıdır. Bu, sənin database strukturunun vizual təsviridir və göstərir ki, entitilər (cədvəllər) bir-biri ilə necə əlaqəlidir.
Təsəvvür elə ki, ERD — database üçün metro xəritəsidir. Stansiyalar — cədvəllərdir, onları birləşdirən xətlər isə əlaqələrdir. Bu xəritə sənə stansiyalar arasında (və cədvəllərin necə işlədiyini) başa düşməyə kömək edir.
ERD aşağıdakılardan ibarətdir:
- Entitilər: bunlar obyektlər və ya cədvəllərdir, məsələn, "Tələbələr", "Kurslar", "Müəllimlər".
- Atributlar: bunlar cədvəldəki sütunlardır, məsələn
ID,Ad,Soyad. - Əlaqələr: bunlar cədvəllər arasındakı xətlərdir, hansı ki, münasibətləri göstərir, məsələn, bir tələbə bir neçə kursa yazılıb.
ERD ilə sən təkcə database planlaşdıra bilmirsən, həm də komanda yoldaşlarına və ya rəhbərliyə onun necə qurulduğunu göstərə bilərsən. Bu, hər bir developer üçün güclü bir alətdir!
ERD-nin əsas elementləri
- Entitilər
Entiti — bu, database-in mini versiyasıdır. Hər bir entiti real obyektə və ya anlayışa uyğun gəlir, hansı ki, sistemində idarə etmək istəyirsən. Məsələn:
- "Tələbələr" cədvəli.
- "Kurslar" cədvəli.
- "Verilmələr" cədvəli (kitabxana sistemində).
Nümunə:
+---------------+
| Tələbələr |
+---------------+
| ID |
| Ad |
| Soyad |
| Doğum tarixi |
+---------------+
- Atributlar Atributlar — entitinin ayrıca xüsusiyyətləri və ya xarakteristikalarıdır. Onlar database cədvəlində sütun kimi göstərilir. Məsələn:
- "Tələbələr" cədvəli üçün bunlar ola bilər:
ID,Ad,Soyad. - "Kurslar" cədvəli üçün:
Kursun ID-si,Kursun adı.
ERD-də onlar adətən entitini göstərən düzbucaqlının içində yazılır.
Entitilər arasındakı əlaqələr
Əlaqə göstərir ki, iki entiti bir-biri ilə necə qarşılıqlı əlaqədədir. Əsas əlaqə tiplərini xatırladaq:
- Birə-bir (1:1): məsələn, hər tələbənin bir unikal vəsiqəsi var.
- Birə-çox (1:N): məsələn, bir müəllim bir neçə kurs keçir.
- Çoxdan-çoxa (M:N): məsələn, bir neçə tələbə bir neçə kursa yazılıb.
"Birə-çox" əlaqəsinə nümunə:
Tələbələr (1) <----- yazılıb -----> (N) Kurslar
Database-də əlaqələri qurmaq üçün adətən foreign key-lərdən istifadə edirik.
ERD necə qurulur?
Gəlin ERD qurma prosesinə addım-addım baxaq və kitabxana üçün nümunə ilə izah edək.
Addım 1: Entitiləri müəyyən et
Sənin işin — sistemi əsas obyektlərə bölməkdir. Məsələn, kitabxana sistemi üçün bunlar:
- "Kitablar".
- "Oxucular".
- "Verilmələr".
Nümunə:
+-------------+ +--------------+ +------------+
| Kitablar | | Oxucular | | Verilmələr |
+-------------+ +--------------+ +------------+
| ID | | ID | | ID |
| Adı | | Ad | | Oxucu |
| Müəllif | | Soyad | | Kitab |
| ISBN | | Doğum tarixi | | Verilmə tarixi|
+-------------+ +--------------+ +------------+
Addım 2: Atributları əlavə et
Hər bir entitinin əsas atributları olmalıdır. Məsələn:
- "Kitablar" cədvəli
ID(primary key),Adı,Müəllif,ISBNdaxil etməlidir. - "Oxucular" cədvəli —
ID,Ad,Soyad.
Addım 3: Əlaqələri qur
İndi entitilər arasında əlaqələri əlavə et:
- "Verilmələr" "Kitablar" ilə əlaqəlidir (bir kitab bir neçə dəfə verilə bilər).
- "Verilmələr" "Oxucular" ilə əlaqəlidir (bir oxucu bir neçə kitab götürə bilər).
Addım 4: Vizualizasiya et
Hər hansı diaqram alətindən istifadə et, məsələn:
- draw.io
- dbdiagram.io
- Lucidchart
- Microsoft Visio
Diaqram belə görünəcək:
[Oxucular] ----(1:N)---- [Verilmələr] ----(N:1)---- [Kitablar]
Hər bir əlaqə üçün data type və izah əlavə et, məsələn:
- Oxucunun ID-si "Verilmələr"də "Oxucular" cədvəlinin primary key-i ilə əlaqəlidir.
Nümunə: Onlayn mağazanın ERD-si
Onlayn mağaza üçün belə bir məntiqi struktur lazımdır:
- İstifadəçilər (qeydiyyatdan keçmiş müştərilər).
- Məhsullar (mallar).
- Sifarişlər.
Addım 1: Entitilər
- İstifadəçilər:
İstifadəçi ID-si,Ad,Email. - Məhsullar:
Məhsulun ID-si,Adı,Qiymət. - Sifarişlər:
Sifarişin ID-si,İstifadəçi ID-si,Sifariş tarixi.
Addım 2: Əlaqələrin qurulması
- Bir istifadəçi bir neçə sifariş edə bilər (1:N).
- Bir sifariş bir neçə məhsul daxil edə bilər (M:N).
Tam ERD diaqramı:
[İstifadəçilər] ----(1:N)---- [Sifarişlər] ----(N:M)---- [Məhsullar]
Çoxdan-çoxa əlaqəni qurmaq üçün aralıq cədvəl əlavə et:
- Sifariş tərkibi:
Sifarişin ID-si,Məhsulun ID-si,Miqdar.
ERD yaratmaq üçün məsləhətlər
Əvvəlcə database-də nə görmək istədiyini düşün. Hər şey sənin subject area-nı başa düşməkdən başlayır.
Yalnız həqiqətən vacib olan atribut və entitiləri daxil et. Həddindən artıq detal qarışıqlıq yarada bilər.
Bütün əlaqələrin məntiqi olduğuna əmin ol. Əgər əlaqə qəribə görünürsə, bir də bax.
Diaqramları vizuallaşdırmağa kömək edən alətlərdən istifadə et. Bu, vaxt və enerji saxlayacaq.
GO TO FULL VERSION