Formát: 30 min praktická úloha, 15 min obhajoba + teorie. Praktika je kreslení ER modelu na papír podle textového zadání (žádný počítač). Pokrývá rekurzivní vazbu, vazbu 1:1 a M:N (databáze je "trošku vypečená" podle informací z minulých let).

💡 Tip k notaci: Pro maturitu kresli notaci. Mermaid diagramy v tomhle souboru jsou jen pro čitelnost, na zkoušku potřebuješ umět to nakreslit rukou.


Část 1: Teorie

Co je databáze

Databáze je organizovaný soubor dat, který umožňuje informace ukládat, vyhledávat, upravovat a bezpečně spravovat. Používá se v e-shopech, školních systémech, bankách, nemocnicích.

O správu se stará DBMS (Database Management System): MySQL, PostgreSQL, MS SQL Server, Oracle, SQLite, MariaDB.

Proč nepoužívat ploché tabulky (Excel)

Plochá data (Excel) Relační databáze
Redundance (opakování) Normalizovaná, žádné opakování
Nekonzistence (2 hodnoty si odporují) Integritní omezení (FK, UNIQUE, CHECK)
Špatné vazby, obtížně se hlídají FK constraints, referenční integrita
Konflikty (víc lidí přepíše současně) Transakce, locking, MVCC
Žádná typová kontrola Datové typy (INT, VARCHAR, DATE...)

3 úrovně návrhu databáze

Úroveň Co řeší Výstup
Konceptuální model Co chceme ukládat. Objekty a vztahy z reálného světa ER diagram (entity + relace)
Logický model Překlápí koncept do tabulek. Definuje PK, FK, propojení Relační schéma
Fyzický model Technické detaily pro konkrétní DBMS. Datové typy, indexy CREATE TABLE skripty
Konceptuální:   "Studenti mají třídu"  (kreslíme entity)
                       ▼
Logický:        Tabulka Student s FK trida_id → tabulka Trida.id
                       ▼
Fyzický:        CREATE TABLE Student (
                    id INT AUTO_INCREMENT PRIMARY KEY,
                    trida_id INT NOT NULL,
                    INDEX idx_trida (trida_id),
                    FOREIGN KEY (trida_id) REFERENCES Trida(id)
                );

Klíčové pojmy ER modelu

Pojem Význam Příklad
Data Jednotlivé hodnoty "Anna", "25", "2026-05-11"
Informace Data v souvislostech "Zákaznice Anna, 25 let, registrovaná 2026-05-11"
Entita Typ objektu reálného světa, o kterém vedeme záznamy Zakaznik, Produkt, Objednavka
Atribut Vlastnost entity jmeno, email, cena
Klíč Atribut(y), které jednoznačně identifikují záznam id_zakaznika
Relace (vazba) Vztah mezi entitami Zákazník → Objednávka
Kardinalita Kolik výskytů jedné entity souvisí s druhou 1:1, 1:N, M:N

Pozor na terminologii: "Entita" je typ objektu (Student obecně), ne konkrétní záznam ("Karel Novák"). Konkrétnímu výskytu se říká instance entity. V ER diagramu kreslíš entity, ne instance.

Změna terminologie při přechodu na logický model

Konceptuální (ER) Logický (relační DB)
Entita Tabulka
Atribut Sloupec (column)
Relace (čára) Propojení přes klíče (FK)
Instance Řádek (row)