Məzmuna keç
Educora
İrəli10-cu sinif22 dəq38 / 59

Verilənlər bazası: modellər, VBİS və əlaqəli cədvəllər

Verilənlər bazası və VBİS, iyerarxik, şəbəkə və relyasiya modelləri, sahə, yazı və açar sahə, 1:1, 1:N və M:N əlaqələr — və DİM tipli məsələ: 2–3 əlaqəli cədvələ görə say və ya cəm tapmaq.

Özünü yoxla
Bu dərsdə öyrənəcəksən
  • Verilənlər bazasını, VBİS-i və VBİS-in obyektlərini (cədvəl, sorğu, forma, hesabat) fərqləndirmək
  • İyerarxik, şəbəkə və relyasiya modellərini nümunəyə görə tanımaq
  • Cədvəldə sahə, yazı və açar sahəni tapmaq, əlaqənin növünü (1:1, 1:N, M:N) müəyyən etmək
  • Əlaqəli cədvəllərə görə DİM tipli sualları addım-addım həll etmək

Məktəb kitabxanasında min kitab və yüzlərlə oxucu var. Kitabxanaçı bir neçə saniyəyə «bu ay kim hansı kitabı götürüb?» sualına cavab tapır, çünki məlumatlar dəftərdə yox, verilənlər bazasında saxlanılır. Elektron məktəb jurnalı, bankdakı hesablar, onlayn mağazanın kataloqu da belə işləyir.

Qəbul imtahanının informatika hissəsində 2025–2026-cı illərin hər variantında verilənlər bazasına aid 2 tapşırıq olub: biri sorğuya, digəri əlaqəli cədvəllərə aiddir. Bu dərsdə anlayışları və əlaqəli cədvəllər üzrə məsələnin həll alqoritmini, növbəti dərsdə — «Verilənlər bazasında sorğular, axtarış və çeşidləmə» — sorğuları öyrənəcəksən.

Verilənlər bazası və VBİS

Tərif
Verilənlər bazası (VB)

Müəyyən mövzuya aid, əvvəlcədən düşünülmüş qaydada təşkil olunmuş və kompüterin yaddaşında saxlanılan verilənlər toplusu. Qayda sayəsində lazım olan məlumatı tez tapmaq, əlavə etmək və dəyişmək olur.

Tərif
Verilənlər bazasının idarəolunması sistemi (VBİS)

Verilənlər bazasını yaratmağa, doldurmağa, redaktə etməyə, onda axtarış və çeşidləmə aparmağa, verilənləri qorumağa imkan verən proqram. Nümunələr: Microsoft Access, LibreOffice Base, MySQL, PostgreSQL, SQLite, Oracle Database, Microsoft SQL Server.

Fərqi yadda saxla: VB — verilənlərin özüdür (kitabxananın kataloqu), VBİS isə onlarla işləyən alətdir (kataloqu aparan kitabxanaçı). Proqram təminatının təsnifatında VBİS tətbiqi proqramlara aiddir. DİM-in uyğunluq tapşırığında Yukon da VBİS kimi verilmişdi: bu, Microsoft SQL Server 2005-in işçi adıdır. VBİS-in dörd əsas obyekti var:

ObyektNə üçündürNümunə
Cədvəlverilənləri sətir və sütunlarda saxlayır; bazanın əsasıdır«Oxucular», «Kitablar»
Sorğuşərtə uyğun yazıları seçir, çeşidləyir, hesablayırNizami küçəsində yaşayan oxucular
Formaverilənləri rahat daxil etmək və baxmaq üçün pəncərəyeni oxucunun qeydiyyat forması
Hesabatverilənləri çap üçün qruplaşdırılmış, yekunlarla sənəd kimi təqdim ediray ərzində verilən kitabların siyahısı və sayı
Kodlu tapşırıq: uyğunluq

Uyğunluğu müəyyən edin.
1. Verilənlər bazasının idarəolunması sistemi
2. Rastr qrafik redaktor
3. Mətn prosessoru
a. Microsoft Access b. GIMP c. LibreOffice Writer d. PostgreSQL e. Adobe Photoshop

Həllini göstər
Access və PostgreSQL verilənlər bazalarını idarə edir; GIMP və Photoshop piksellərdən ibarət (rastr) şəkilləri redaktə edir; LibreOffice Writer mətn prosessorudur. Bir bəndə bir neçə hərf uyğun gələ bilər.
Cavab: 1 – a, d; 2 – b, e; 3 – c.

Verilənlər modelləri

Verilənlər modeli — verilənlərin və onlar arasındakı əlaqələrin necə təşkil olunduğunu göstərən quruluşdur. Proqramda üç klassik model öyrənilir:

ModelQuruluşuNümunə
İyerarxikağac: yuxarıda bir kök element, hər elementin yalnız bir «valideyni» vardisk → qovluq → alt qovluq → fayl; məktəb → siniflər → şagirdlər
Şəbəkəqraf: element bir neçə elementlə əlaqəli ola bilər, «valideyni» də bir neçə ola bilərmüəllimlər və siniflər: hər müəllim bir neçə sinifdə, hər sinifdə bir neçə müəllim
Relyasiyaikiölçülü cədvəllər toplusu; cədvəllər ortaq sahələrlə əlaqələnir«Oxucular», «Kitablar», «Götürmələr» cədvəlləri

Bu gün ən geniş yayılmış model relyasiya modelidir: yuxarıda adı çəkilən VBİS-lərin hamısı cədvəllərlə işləyir. Ağac və qrafın özü haqqında «Ağac informasiya modeli» və «Qraf informasiya modeli: qonşuluq matrisi və yolların sayı» dərslərində ətraflı danışılır.

Cədvəl: sahə, yazı və açar sahə

Tərif
Sahə

Cədvəlin sütunu. Obyektin bir xassəsini saxlayır (Oxucu, Küçə). Hər sahənin adı və tipi var.

Tərif
Yazı

Cədvəlin sətri: bir obyekt haqqında bütün məlumat (bir oxucu, bir kitab). Sahələrin adları yazılan başlıq sətri yazı sayılmır.

Tərif
Açar sahə

Qiyməti heç bir iki yazıda təkrarlanmayan və buna görə yazını birmənalı müəyyən edən sahə (ilkin açar): Bilet_№, ID_kitab. Başqa cədvəldə bu açarın qiymətlərini saxlayan sahə xarici açar adlanır.

Sahənin tipiNə saxlayırNümunə
Mətnhərflər, rəqəmlər, işarələrad, küçə, telefon nömrəsi
Ədədihesablama aparılan ədədlərsəhifə sayı, bal
Tarix/vaxttarix və vaxt15.09.2025
Pulpul məbləği12,50 ₼
Sayğachər yeni yazıya avtomatik verilən artan nömrə1, 2, 3, …
Məntiqiiki qiymətdən biri: bəli / xeyrkitab qaytarılıb?
Sahələr, yazılar və açar

«Şagirdlər» cədvəlinin başlıq sətrində 5 sahə adı var: ID, Ad, Soyad, Sinif, Doğum tarixi; altında isə 7 sətir doldurulub. 1) Cədvəldə neçə sahə və neçə yazı var? 2) Hansı sahə açar ola bilər? 3) «Doğum tarixi» sahəsinin tipi nədir?

Həllini göstər
1) Sahə = sütun: 5 sahə. Yazı = başlıqdan sonrakı sətir: 7 yazı (başlıq sətri sayılmır).
2) Ad, Soyad, Sinif və hətta Doğum tarixi iki şagirddə eyni ola bilər. Hər şagirdə ayrıca verilən ID heç vaxt təkrarlanmır — açar sahə ID-dir.
3) Tarix/vaxt tipi.

Cədvəllər arasında əlaqələr

Bütün məlumatı bir cədvələ yazsaq, Aysel hər dəfə kitab götürəndə onun küçəsi də yenidən yazılacaq: bu, yer tutur və səhvə yol açır, çünki ünvan dəyişəndə onu onlarla sətirdə düzəltmək lazım gələr. Ona görə hər obyekt növü ayrıca cədvəldə saxlanılır, cədvəllər isə açar sahələrlə əlaqələndirilir. Əlaqənin üç növü var:

  • Birin-birə (1:1): birinci cədvəlin bir yazısına ikincinin ən çoxu bir yazısı uyğundur — vətəndaş və onun şəxsiyyət vəsiqəsi.
  • Birin-çoxa (1:N): birinci cədvəlin bir yazısına ikincinin çox yazısı uyğundur, əksinə isə yalnız bir — sinif və onun şagirdləri.
  • Çoxun-çoxa (M:N): hər iki tərəfdən çox — oxucular və kitablar. Relyasiya bazasında bu əlaqə üçüncü, əlaqələndirici cədvəl ilə qurulur: orada hər iki cədvəlin açarı xarici açar kimi durur və M:N əlaqə iki 1:N əlaqəyə çevrilir.
OxucularBilet_№OxucuKüçəKitablarID_kitabMüəllifSəhifəGötürmələr№Bilet_№ID_kitab1N1N
Oxucular və kitablar arasında M:N əlaqə «Götürmələr» cədvəli ilə iki 1:N əlaqəyə bölünür. Açar sahələr bənövşəyi rənglə göstərilib.

«Götürmələr» cədvəlinin hər sətri bir hadisədir: «bu oxucu bu kitabı götürdü». Eyni oxucu və ya eyni kitab bir neçə sətirdə görünə bilər — bu, təkrar deyil, ayrı-ayrı götürmələrdir.

İnteraktiv
Simulyasiya yüklənir…
Özünü yoxla: hər cütü uyğun qrupa at və «Yoxla» düyməsini bas.

Əlaqəli cədvəllər üzrə DİM tipli məsələlər

Tapşırıqda 2–3 əlaqəli cədvəl verilir və soruşulur: neçə dəfə, neçə nəfər, ID-lərin cəmi, günlərin cəmi. VBİS bunu bir sorğu ilə edir, imtahanda isə əllə etmək lazımdır. Ən etibarlı yol — açarları çoxluq kimi yazmaqdır.

  1. 1
    Sualı təhlil et

    Nə tapılır (say, cəm, ad) və hansı şərtlər var (küçə, müəllif, sinif)?

  2. 2
    Şərtləri açarlara çevir

    Hər şərt üçün öz cədvəlində uyğun açarları seç və çoxluq kimi yaz, məsələn, {A1, A3, A5}.

  3. 3
    Əlaqələndirici cədvəli süz

    Yalnız hər iki çoxluğa uyğun gələn sətirləri işarələ.

  4. 4
    Əməli yerinə yetir

    Sətirləri say (neçə dəfə), fərqli adamları say (neçə nəfər) və ya lazımi sütunu topla.

  5. 5
    Yoxla

    Təkrar sətirlər ayrıca sayılıb? Sual «neçə dəfə» idi, yoxsa «neçə nəfər»?

Bilet_№OxucuKüçə
A1AyselNizami küçəsi
A2MuradFüzuli küçəsi
A3LeylaNizami küçəsi
A4ElvinSəməd Vurğun küçəsi
A5NigarNizami küçəsi
A6RəşadFüzuli küçəsi
Cədvəl 1. Oxucular
ID_kitabMüəllifSəhifə
11Nizami Gəncəvi320
12Jül Vern280
13Nizami Gəncəvi240
14Mirzə Fətəli Axundov150
15Jül Vern410
Cədvəl 2. Kitablar
№Bilet_№ID_kitab
1A112
2A211
3A315
4A115
5A412
6A513
7A312
8A615
9A111
10A512
11A315
12A214
Cədvəl 3. Götürmələr
DİM tipli tapşırıq: neçə dəfə?

Cədvəl 1–3-ə görə Nizami küçəsinin sakinləri Jül Vernin kitablarını cəmi neçə dəfə götürüblər?
A) 4 B) 5 C) 6 D) 3 E) 7

Həllini göstər
1) Cədvəl 1: Nizami küçəsi → {A1, A3, A5}.
2) Cədvəl 2: Jül Vern → {12, 15}.
3) Cədvəl 3-də hər iki şərtə uyğun sətirlər: 1 (A1, 12), 3 (A3, 15), 4 (A1, 15), 7 (A3, 12), 10 (A5, 12), 11 (A3, 15).
4) Sual «neçə dəfə»dir — sətirləri sayırıq: 6. (Leyla 15 nömrəli kitabı iki dəfə götürüb — iki ayrı götürmədir.)
Doğru cavab: C) 6.
Cəm: səhifələrin sayı

Cədvəl 1–3-ə görə Leyla götürdüyü kitabları oxuyubsa, o cəmi neçə səhifə oxuyub? Hər götürmə ayrıca sayılır.

Həllini göstər
1) Cədvəl 1: Leyla → A3.
2) Cədvəl 3: A3 olan sətirlər — 3 (kitab 15), 7 (kitab 12), 11 (kitab 15).
3) Cədvəl 2: 15 → 410 səhifə, 12 → 280 səhifə.
4) 410 + 280 + 410 = 1100 səhifə.
Tələ: 15 nömrəli kitabı bir dəfə saysan, 690 alınar — bu, səhv cavabdır.
Python
readers = {'A1': 'Nizami', 'A2': 'Fuzuli', 'A3': 'Nizami',
           'A4': 'Vurgun', 'A5': 'Nizami', 'A6': 'Fuzuli'}
books = {11: ('Nizami Ganjavi', 320), 12: ('Jules Verne', 280),
         13: ('Nizami Ganjavi', 240), 14: ('Mirza Fatali Akhundov', 150),
         15: ('Jules Verne', 410)}
loans = [('A1', 12), ('A2', 11), ('A3', 15), ('A1', 15), ('A4', 12), ('A5', 13),
         ('A3', 12), ('A6', 15), ('A1', 11), ('A5', 12), ('A3', 15), ('A2', 14)]

nizami = {card for card, st in readers.items() if st == 'Nizami'}
verne = {book for book, (author, pages) in books.items() if author == 'Jules Verne'}
print('Readers:', sorted(nizami), 'Books:', sorted(verne))

times = sum(1 for card, book in loans if card in nizami and book in verne)
print('Loans of Verne books by Nizami St. readers:', times)

pages = sum(books[book][1] for card, book in loans if card == 'A3')
print('Pages read by A3 (Leyla):', pages)
▸ Gözlənilən nəticə
Readers: ['A1', 'A3', 'A5'] Books: [12, 15]
Loans of Verne books by Nizami St. readers: 6
Pages read by A3 (Leyla): 1100
Eyni məsələ Python-da: şərtlər çoxluqlara çevrilir, sonra əlaqələndirici cədvəlin sətirləri süzülür. Cədvəldəki qiyməti dəyiş və «İşə sal» düyməsini bas. SQL-də bunu JOIN edir — bax: «JOIN: cədvəllərin birləşdirilməsi».
Tələ: «10-cu siniflər»

Siniflər (Sinif_ID — sinfin adı): 1 — 9a, 2 — 10a, 3 — 10b, 4 — 11a, 5 — 10c.
Şagirdlər (ad — Sinif_ID — boy): Kamran — 2 — 172 sm, Fidan — 4 — 168 sm, Tural — 3 — 181 sm, Səbinə — 5 — 165 sm, Orxan — 1 — 175 sm, Günay — 3 — 169 sm, Kənan — 5 — 177 sm.
10-cu siniflərdə boyu 170 sm-dən çox olan neçə şagird var?

Həllini göstər
1) «10-cu siniflər» — 10a, 10b və 10c-dir, yəni Sinif_ID ∈ {2, 3, 5}. Yalnız 10a-nı götürmək ən çox edilən səhvdir.
2) Bu siniflərin şagirdləri: Kamran (172), Tural (181), Səbinə (165), Günay (169), Kənan (177).
3) 170 sm-dən çox: Kamran, Tural, Kənan.
Cavab: 3. (Yalnız 10a götürülsə 1, sinif şərti unudulsa 4 alınar.)

Əsas fikirlər

  • Verilənlər bazası — verilənlərin özü, VBİS — onlarla işləyən proqramdır (Access, MySQL, PostgreSQL, SQLite); VBİS tətbiqi proqram təminatına aiddir.
  • VBİS-in obyektləri: cədvəl saxlayır, sorğu seçir, forma daxil etməyə kömək edir, hesabat çap üçün təqdim edir.
  • Modellər: iyerarxik — ağac, şəbəkə — qraf, relyasiya — əlaqəli cədvəllər.
  • Sahə — sütun, yazı — sətir (başlıq sayılmır), açar sahənin qiyməti təkrarlanmır.
  • M:N əlaqə əlaqələndirici cədvəllə iki 1:N əlaqəyə bölünür; onun hər sətri bir hadisədir və ayrıca sayılır.
  • Əlaqəli cədvəl məsələsi: şərtlər → açar çoxluqları → əlaqələndirici cədvəlin süzülməsi → say və ya cəm.

Özünü yoxla

12 sual. Hər düzgün cavab XP qazandırır.

1 / 12
VBİS nədir?