====== BIVŠ Databáze I (pro bakalářský studijní program) ====== ===== Přednášky ===== * {{:bivs:dbs_01_uvod.pdf|úvodní přednáška + požadavky na zápočet a info o zkoušce}} * {{:bivs:dbs_02_databazove_modely.pdf|databázové modely }} * {{:bivs:dbs_03_konceptualni_modelovani.pdf| konceptuální modelování }} * {{:bivs:dbs_05_sql_1.pdf| SQL 1 - Úvod a jednoduché dotazy}} * {{:bivs:dbs_05_sql_2.pdf| SQL 2 - pokročilé dotazování}} * {{:bivs:dbs_05_sql_3.pdf| SQL 3 - DML, pohledy}} * {{:bivs:dbs2_02_io_ddl.pdf| SQL 4 - DDL, deklarativní integritní omezení}} * {{:bivs:dbs_06_transformace_konceptualniho_shcematu_na_relacni.pdf| Transformace konceptuálního modelu na relační}} * {{:bivs:dbs_09_transakce.pdf| Transakční zpracování}} * {{:bivs:dbs_10_fyzicke_ulozeni_dat.pdf| Fyzický model uložení dat}} * {{:bivs:dbs_07_normalizace.pdf| Normalizace relačního schéatu (část 1)}} ===== Cvičení ===== * informace o zápočtu jsou ve slajdech z první přednášky * na cvičeních budeme pracovat v nástrojích Oracle DataModeller a Oracle SQLDeveloper ===== Informace o cvičeních pro studenty deního studia ===== * přednášky začínají až 15.10. * první skutečné cvičení bude až **17.10. v 8.45 v místnosti 207** * **24.10. cvičení odpadá** (jsem u státnic) ===== Příklady na cvičení ===== * [[bivs:dept-emp-sql|SQL - dotazy nad tabulkami Department a Employees]] * [[bivs:lek-sql|SQL - dotazy nad databází Lekar - Navsteva - Pacient]] * [[bivs:lek-dml|SQL - DML aDDL nad databází Lekar - Navsteva - Pacient]] ===== Ukázkový zkouškový test ===== {{:bivs:test_a.pdf| Je zde (reálný nebude totožný, pouze typově podobný ;-) )}} Zkouška se bude skládat z písemky, kterou opravím, buď přímo s vámi nebo ji s vámi potom projdu. V případě nejasnosti o známce může následovat doplňující otázka. Podstatnou částí zkoušky jsou SQL příkazy. Očekává se, že prakticky (tedy i do testu) zvládnete: * následující klauzule příkazu SELECT: SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY * použití množinového rozdílu (MINUS) * operátor IN (resp. NOT IN) pro tvorbu vnořených dotazů * DML príkazy UPDATE, INSERT, DELETE včetně použití vnořeného dotazu * agregační funkce MIN, MAX, COUNT, SUM, AVG * drobné chyby a odchylky v syntaxi SQL příkazu v testu nebudou problém, podstatné je, abyste správně vyjádřili "strategii" provedení SQL příkazu ===== Okruhy "teoretických" otázek (součást zkouškového testu) ===== * tři úrovně pohledu na data (konceptuální, logická, fyzická) * relační algebra - co to je, k čemu je to dobré * proč se relační model dat jmenuje relační * vlastnosti ACID * stavový diagram transakce * příklady transakcí * motivaci a smysl transakčního zpracování * uzamykací protokol - co to je, k čemu je to dobré * normalizace databází - co to je, k čemu je to dobré, příklad * funkční závislost - co to je, k čemu je to dobré * 3NF, BCNF - co to je, k čemu je to dobré * co je to funkční závislost, jak se definuje klíč relace pomocí FZ * k čemu jsou dobré indexy v databázích, jaké typy indexů znáte ===== Zkoušky - termíny ===== Zkouškové termíny vypíšu po dohodě s vámi do IS. Pokud nebudou oficiální termíny stačit/vyhovovat, je možné se domluvit na individuálním termínu. V tom případě ale budete muset dojet za mnou do Dejvic.