Zhrnutie na Základné Koncepty Počítačových Vied

Základné Koncepty Počítačových Vied: Kompletný Sprievodca

Úvod

Návrh databázy je proces plánovania štruktúry databázy tak, aby spoľahlivo ukladala údaje, minimalizovala redundanciu a podporovala rýchle a konzistentné dotazy. Jedným z kľúčových nástrojov pri návrhu relačnej databázy je E-R diagram (Entity-Relationship), ktorý vizuálne znázorňuje entity, ich atribúty a vzťahy medzi nimi.

Definícia: E-R diagram je grafická reprezentácia databázového modelu, ktorá znázorňuje entity, atribúty a vzťahy medzi entitami.

Základné prvky E-R diagramu

Entity

  • Entity predstavujú objekty alebo koncepty, o ktorých chceme ukladať informácie (napr. Študent, Predmet, Učiteľ).
  • V diagrame sa entity kreslia ako obdĺžniky.

Definícia: Entity sú objekty reálneho sveta, ktoré majú vlastné atribúty a sú reprezentované tabuľkami v relačnej databáze.

Atribúty

  • Atribúty popisujú vlastnosti entity (napr. meno, vek, ID).
  • V diagrame sa atribúty značí ako ovály pripojené k entite.
  • Primárny kľúč je špeciálny atribút, ktorý jednoznačne identifikuje každý záznam (napr. ID_študenta).

Definícia: Atribúty sú stĺpce tabuľky, ktoré uchovávajú jednotlivé vlastnosti entity.

Vzťahy (relácie)

  • Vzťahy spájajú entity a vyjadrujú, ako sú objekty navzájom prepojené (napr. Zapisuje, Vyučuje).
  • V diagrame sa vzťahy kreslia ako kosoštvorce medzi entitami.

Definícia: Vzťahy popisujú spojenia medzi entitami a určujú, aké väzby sú medzi záznamami rôznych tabuliek.

Kardinalita vzťahov

Kardinalita určuje, koľko záznamov jednej entity môže byť spojených s koľkými záznamami inej entity.

TypPopisPríklad
1:1Jeden záznam entity A je spojený s jedným záznamom entity BOsoba – Pas
1:NJeden záznam entity A môže byť spojený s viacerými záznamami entity BŠtudent – Známky
M:NViaceré záznamy entity A môžu byť spojené s viacerými záznamami entity B (riešené pomocnou tabuľkou)Študent – Predmet

Definícia: Kardinalita vyjadruje počet povolených spojení medzi inštanciami entít.

Transformácia M:N na relačnú štruktúru

  • M:N vzťah sa v relačnej databáze zvyčajne realizuje cez pomocnú (spájaciu) tabuľku.
  • Pomocná tabuľka obsahuje minimálne primárne kľúče oboch spojených entít ako cudzie kľúče.

Príklad: Entity Študent a Predmet s M:N vzťahom Zapisuje sa transformujú na tri tabuľky:

  1. Študent(ID_študenta, meno, vek)
  2. Predmet(ID_predmetu, nazov, kredity)
  3. Zapisuje(ID_študenta, ID_predmetu, datum_zapisu) – primárny kľúč môže byť zložený z $ID_študenta$, $ID_predmetu$ alebo môže byť pridané samostatné ID.

Definícia: Pomocná tabuľka v M:N vzťahu slúži na zachovanie väzieb medzi dvoma entitami pomocou cudzích kľúčov.

Praktické príklady a aplikácie

Príklad: Univerzitný systém

  • Entity: Študent, Predmet, Učiteľ, Škola
  • Vzťahy: Študent "zapisuje" Predmet, Učiteľ "vyučuje" Predmet, Škola "ponúka" Predmet
  • Možné tabuľky po transformácii:
    • Študent(ID_študenta, meno, e-mail)
    • Predmet(ID_predmetu, nazov, kredity)
    • Učiteľ(ID_ucitela, meno, titul)
    • Vyučuje(ID_ucitela, ID_predmetu, semester)
    • Zapisuje(ID_študenta, ID_predmetu, datum)

Reálne aplikácie

  • Systémy na správu škôl a univerzít
  • Skladové a inventárne systémy (produkty, dodávatelia, objednávky)
  • Systémy pre e-shop (zákazníci, objednávky, produkty)
💡 Vedeli ste?Fun fact: E-R diagramy vytvoril Peter Chen v roku 1976 a stali sa základom mnohých moderných databázových návrhov.

Porovnanie: E-R diagram vs. fyzický návrh databázy

AspektE-R diagram (logický)Fyzický návrh
ZameranieKonceptuálne vzťahy medzi entitamiImplementácia tabuľiek, indexov, typov stĺpcov
Úroveň detailuVysoká úroveň, bez DB špecifíkDetaily DBMS, normalizácia, indexy
PoužitieNávrh, komunikácia s tímomNasadenie, optimalizácia

Tipy pre tvorbu čistých E-R diagramov

  • Identifikujte hlavné entity pred detailovaním atribút
Zaregistruj sa pre celé zhrnutie
KartičkyTest znalostíZhrnutiePodcastMyšlienková mapa
Začni zadarmo

Už máš účet? Prihlásiť sa

Návrh databázy – E-R diagram

Klíčová slova: OSPF, Java I/O, Ladenie, Návrh databázy

Klíčové pojmy: E-R diagram vizualizuje entity, atribúty a vzťahy, Entity sú reprezentované ako tabuľky (obdĺžniky), Atribúty sú stĺpce tabuľky, primárny kľúč jednoznačne identifikuje záznam, Vzťahy sa kreslia ako kosoštvorce a určujú spojenia medzi entitami, Kardinalita môže byť 1:1, 1:N alebo M:N, M:N sa rieši pomocnou tabuľkou obsahujúcou cudzie kľúče, Pri návrhu určte primárne kľúče a normalizujte dáta, Použite popisné pomenovania (napr. ID_študenta, datum_zapisu), E-R diagram je logický návrh, fyzický návrh obsahuje DBMS detaily, Pre cvičenie nakresliť E-R diagram e-shopu a určiť kardinality

## Úvod Návrh databázy je proces plánovania štruktúry databázy tak, aby spoľahlivo ukladala údaje, minimalizovala redundanciu a podporovala rýchle a konzistentné dotazy. Jedným z kľúčových nástrojov pri návrhu relačnej databázy je **E-R diagram (Entity-Relationship)**, ktorý vizuálne znázorňuje entity, ich atribúty a vzťahy medzi nimi. > **Definícia:** E-R diagram je grafická reprezentácia databázového modelu, ktorá znázorňuje entity, atribúty a vzťahy medzi entitami. ## Základné prvky E-R diagramu ### Entity - Entity predstavujú objekty alebo koncepty, o ktorých chceme ukladať informácie (napr. **Študent**, **Predmet**, **Učiteľ**). - V diagrame sa entity kreslia ako obdĺžniky. > **Definícia:** Entity sú objekty reálneho sveta, ktoré majú vlastné atribúty a sú reprezentované tabuľkami v relačnej databáze. ### Atribúty - Atribúty popisujú vlastnosti entity (napr. **meno**, **vek**, **ID**). - V diagrame sa atribúty značí ako ovály pripojené k entite. - Primárny kľúč je špeciálny atribút, ktorý jednoznačne identifikuje každý záznam (napr. **ID_študenta**). > **Definícia:** Atribúty sú stĺpce tabuľky, ktoré uchovávajú jednotlivé vlastnosti entity. ### Vzťahy (relácie) - Vzťahy spájajú entity a vyjadrujú, ako sú objekty navzájom prepojené (napr. **Zapisuje**, **Vyučuje**). - V diagrame sa vzťahy kreslia ako kosoštvorce medzi entitami. > **Definícia:** Vzťahy popisujú spojenia medzi entitami a určujú, aké väzby sú medzi záznamami rôznych tabuliek. ## Kardinalita vzťahov Kardinalita určuje, koľko záznamov jednej entity môže byť spojených s koľkými záznamami inej entity. | Typ | Popis | Príklad | |-----|-------|--------| | 1:1 | Jeden záznam entity A je spojený s jedným záznamom entity B | Osoba – Pas | | 1:N | Jeden záznam entity A môže byť spojený s viacerými záznamami entity B | Študent – Známky | | M:N | Viaceré záznamy entity A môžu byť spojené s viacerými záznamami entity B (riešené pomocnou tabuľkou) | Študent – Predmet | > **Definícia:** Kardinalita vyjadruje počet povolených spojení medzi inštanciami entít. ## Transformácia M:N na relačnú štruktúru - M:N vzťah sa v relačnej databáze zvyčajne realizuje cez **pomocnú (spájaciu) tabuľku**. - Pomocná tabuľka obsahuje minimálne primárne kľúče oboch spojených entít ako cudzie kľúče. Príklad: Entity **Študent** a **Predmet** s M:N vzťahom **Zapisuje** sa transformujú na tri tabuľky: 1. Študent(**ID_študenta**, meno, vek) 2. Predmet(**ID_predmetu**, nazov, kredity) 3. Zapisuje(**ID_študenta**, **ID_predmetu**, datum_zapisu) – primárny kľúč môže byť zložený z $ID\_študenta$, $ID\_predmetu$ alebo môže byť pridané samostatné ID. > **Definícia:** Pomocná tabuľka v M:N vzťahu slúži na zachovanie väzieb medzi dvoma entitami pomocou cudzích kľúčov. ## Praktické príklady a aplikácie ### Príklad: Univerzitný systém - Entity: Študent, Predmet, Učiteľ, Škola - Vzťahy: Študent "zapisuje" Predmet, Učiteľ "vyučuje" Predmet, Škola "ponúka" Predmet - Možné tabuľky po transformácii: - Študent(ID_študenta, meno, e-mail) - Predmet(ID_predmetu, nazov, kredity) - Učiteľ(ID_ucitela, meno, titul) - Vyučuje(ID_ucitela, ID_predmetu, semester) - Zapisuje(ID_študenta, ID_predmetu, datum) ### Reálne aplikácie - Systémy na správu škôl a univerzít - Skladové a inventárne systémy (produkty, dodávatelia, objednávky) - Systémy pre e-shop (zákazníci, objednávky, produkty) Fun fact: E-R diagramy vytvoril Peter Chen v roku 1976 a stali sa základom mnohých moderných databázových návrhov. ## Porovnanie: E-R diagram vs. fyzický návrh databázy | Aspekt | E-R diagram (logický) | Fyzický návrh | |--------|------------------------|---------------| | Zameranie | Konceptuálne vzťahy medzi entitami | Implementácia tabuľiek, indexov, typov stĺpcov | | Úroveň detailu | Vysoká úroveň, bez DB špecifík | Detaily DBMS, normalizácia, indexy | | Použitie | Návrh, komunikácia s tímom | Nasadenie, optimalizácia | ## Tipy pre tvorbu čistých E-R diagramov - Identifikujte hlavné entity pred detailovaním atribút