CodeGym /Kurslar /SQL SELF /ERD (entiti və əlaqə diaqramı) yaradılması

ERD (entiti və əlaqə diaqramı) yaradılması

SQL SELF
Səviyyə , Dərs
Mövcuddur

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

  1. 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  |
+---------------+
  1. 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, ISBN daxil 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:

  1. İstifadəçilər (qeydiyyatdan keçmiş müştərilər).
  2. Məhsullar (mallar).
  3. 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.

Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION