Relační databázové systémy
RELAČNÍ DATABÁZOVÉ SYSTÉMY VÝPIS KONTROLNÍCH OTÁZEK S ODPOVĚDMI: Základní pojmy databázové technologie: 1.
Uveďte základní aspekty pro vymezení jednotlivých přístupů ke zpracování hromadných dat: Pro vymezení jednotlivých přístupů ke zpracování hromadných dat je důležitá míra vzájemné integrovanosti organizace dat a stupeň nezávislosti programů od způsobu uložení těchto dat.
2.
Charakterizujte termín agenda: Tento termín se týká agendového zpracování dat a znamená vedení samostatných a rozsahem malých úloh.
3.
Co popisuje položka záznamu v agendovém zpracování? Položka záznamu v agendovém zpracování popisuje jedinou vlastnost jediného objektu.
4.
Jaké soubory se účastní aktualizace v agendovém zpracování? Aktualizace v agendovém zpracování se účastní dva vstupní soubory: kmenový a změnový soubor a výsledkem je třetí soubor zachycující změny, které nastaly od posledního zpracování.
5.
Uveďte hlavní nevýhody agendového zpracování dat. Agendové zpracování dat se vyznačuje následujícím nevýhodami: • Obtížná uživatelská flexibita, • Problémy s redundancí a konzistencí dat, • Obtížná flexibilita datové základny, • Obtížně kontrolovatelná datová redundance, • Omezené možnosti sdílení stejných dat více aplikacemi a více uživateli současně, • Nízká bezpečnost systému, • Obtížná ochrana dat proti případnému zneužití, • Obtížně zajistitelná integrita dat.
6.
Charakterizujte integrované zpracování dat. V integrovaném zpracování dat je míra integrovanosti dat vyšší, ale nezávislost programů od dat zůstává na stejné úrovni jako v případě agendového zpracování dat.
7.
Uveďte základní vlastnosti databázového zpracování dat. Databázové zpracování se vyznačuje těmito vlastnostmi: • Struktury aplikačních programů jsou odděleny od datových souborů, • Přístup k datům je možný jen prostřednictvím programů databázového systému a nikoli přímo, • Dotazy nejsou pevné, • Je umožněn přístup více uživatelů současně a je zajištěna ochrana dat pro zneužití.
Strana č. 1
Relační databázové systémy
Vymezení pojmu databázové technologie: 1.
Uveďte v čem spočívá základní myšlenka databázového zpracování. Základní myšlenkou DB technologie je oddělení uživatelů systému od fyzických souborů s daty a existence komunikačního rozhraní zajišťujícího nezávislost datové základy na aplikačním software.
2.
Charakterizujte pomocí rovnice databázový systém. Princip databázového systému je dán rovnicí: DBS = DB + SŘBD
3.
Vysvětlete termín SŘBD. SŘBD neboli systém řízení báze dat je programový aparát pro popis a manipulaci s daty uloženými v bázi dat, který si uživatel kupuje od výrobce, např. FoxPro, Paradox atd.
4.
Vysvětlete termín entita v problematice databázového zpracování. Entita představuje objekt reálného světa, který existuje a je rozeznatelný od jiných entit dané problémové domény.
5.
Vysvětlete fyzickou úroveň abstrakce databázových systémů. Samotná data uložená v souborech v počítači tvoří takzvanou fyzickou úroveň, která popisuje, jak jsou data samotným počítačem organizována v paměti a zpracovávána.
6.
Objasněte termín datový model: Datový model představuje definici formalizovaných přístupů k uložení a práci s informací v paměti počítače.
7.
Charakterizujte princip statických dat. Statická data se vyznačují tím, že od okamžiku zápisu (nebo změny) v databázi nemění svůj obsah.
8.
Co je základem síťového datového modelu? Základem síťového datového modelu jsou vzájemně propojené množiny záznamů.
9.
V čem se liší hierarchický datový model od síťového modelu? Hierarchický datový model je zvláštním případem síťového datového modelu, kdy je každý záznam odkazován pouze nejvýše jedním jiným záznamem.
10.
Jaké byly hlavní nevýhody hierarchického a síťového datového modelu? Nevýhodou síťového a hierarchického datového modelu byl sekvenční přístup k datům a relativně obtížná změna struktury databáze.
11.
Charakterizujte termín doména sloupce. Doména sloupce představuje obor hodnot, které se v daném sloupci tabulky mohou vyskytovat.
12.
V kterém případě lze hovořit o tzv. složeném klíči? Složený klíč se používá, jestliže je zapotřebí použít více sloupců pro jednoznačné určení řádků.
Strana č. 2
Relační databázové systémy
13.
Jaké jsou podmínky, aby tabulka byla relační? Aby tabulka mohla výt označována jako relační, musí splňovat následujíc podmínky: • Všechny hodnoty v tabulce musí být elementární, • V tabulce je 1 až n sloupců, přičemž jejich pozice je nevýznamná, • V tabulce je 0 řádků, jejichž pozice je rovněž nevýznamná, • Každý sloupec musí být homogenní, • Každý sloupce musí být jednoznačně pojmenován, • Každý řádek tabulky musí být jednoznačně rozlišitelný.
14.
Čím je tvořena relační algebra? Relační algebra je tvořena: • Definicemi jednotlivých elementů relačního datového modelu a • Definicemi relačních operací nad těmito elementy.
15.
Vysvětlete princip operace spojení (JOIN). Spojením dvou relací se vytváří třetí relace, přičemž výsledná tabulka vždy obsahuje všechny kombinace, které vyhovují zadané podmínce.
16.
Vysvětlete termín relační kalkul. Relační kalkul je tvořen množinou formálních pravidel, pomocí kterých se skládají jednotlivé výrazy a představuje určitý způsob jejich formalizovaného zápisu.
17.
Vysvětlete Coddovo pravidlo – Pravidlo SŘBD. Pravidlo SŘBD předepisuje, že databázový systém musí spravovat všechna data pouze pomocí relačních operací.
Strana č. 3
Relační databázové systémy
Vývoje databázové technologie: 1.
Uveďte hlavní nevýhody automatizovaných systémů řízení podniku. Nevýhodou automatizovaných systémů řízení podniku byla značná redundance dat (mnoho položek se vyskytovalo v různých agendách v různých souborech a na různých médiích vícenásobně) a příliš nízká úroveň abstrakce při pohledu na data (jednoduchý model dat).
2. Vysvětlete zjednodušeně, co je chápáno jako systémech.
distribuce v distribuovaných databázových
Distribucí se v tomto případě obvykle chápe fyzické rozdělení dat (včetně možných replikací částí databáze) na více počítačích, přičemž jejich popis je integrován v globálním databázovém schématu. 3.
Charakterizujte termín statické organizace dat. Statické organizace souborů jsou struktury, které při přidávání a odebírání záznamů mohou degenerovat nebo dokonce tyto operace bez vlastní reorganizace nedovolují.
4.
Charakterizujte termín dynamické organizace dat. Dynamicky organizované soubory zůstávají stabilní i při odebírání a vkládání nových údajů.
5.
Vyjmenujte příčiny vzniku databázových systémů. Příčiny, • • • • •
6.
které vedly ke vzniku databázových systémů jsou následující: Vyšší datová abstrakce, Nezávislost aplikačních programů na změnách ve fyzickém uložení dat, Odstranění redundance Sdílení dat Komplexní kontrola nerozpornosti (konzistence) dat.
V čem spočívá fyzická a logická nezávislost dat? Fyzická nezávislost dat je mírou toho, jak je aplikace izolována od změn fyzické datové struktury, tj. změna programu aplikace nevede k nutnosti změny paměťového uložení struktury a naopak. Logická nezávislost dat je mírou izolace aplikačního pohledu od změn ve schématu databáze, přičemž není možné izolovat tento pohled od změn ve schématu, které ruší logické datové jednotky tvořící součást aplikačního pohledu.
7.
Vyjmenujte a stručně vysvětlete úrovně abstrakce při pohledu na data. Při pohledu na data rozeznáváme zpravidla následující tři úrovně abstrakce: • Fyzická úroveň je nejnižší úroveň, na které je popsáno, jak jsou data konkrétně uložena. • Konceptuální úroveň popisuje strukturu dat, která jsou v databázi uložena a jejich vzájemné souvislosti. • Uživatelská úroveň (může jich být tolik, kolik je uživatelů) popisuje pro daného uživatele jen tu část databáze, se kterou se má pracovat.
8.
Jaké jsou funkce subschémy? Funkce subschémy jsou následující: • Vytváří pohled na část dat, kterou popisuje schéma, • Povoluje programový přístup do popisované části báze dat.
Strana č. 4
Relační databázové systémy
Přístupy k datovému modelování: 1.
Vyjmenujte jednotlivé fáze návrhového procesu tvorby datového modelu. Návrhový proces se člení do tří fází: • Konceptuální datový model • Logický datový model • Datový model v definičním jazyku
2.
K čemu slouží ISA – hierarchie? ISA – hierarchie slouží k definování nadtypů a podtypů uvažovaných objektů.
3. Jaký přístup v datovém modelování lze použít pro řešení rozsahem menších problémových domén? Pro řešení takovýchto problémových domén lze použít přístup zdola nahoru. 4.
Z jaké relace vychází přístup „zdola nahoru“? Přístup „zdola nahoru“ vychází z tzv. univerzální relace obsahující všechny atributy řešené databáze.
5.
K čemu slouží primární klíč? Primární klíč slouží k jednoznačné identifikaci každého výskytu entity.
6.
K čemu slouží cizí klíč? Cizí klíč je atribut či skupina atributů identifikující „nadřazenou“ entitu.
7. Kolik relací bude potřeba pro zajištění vztahu kardinality M:N při transformaci do relační struktury? Pro zajištění vztahu kardinality M:N při transformaci do relační struktury bude potřeba tří relací. 8.
Do které normální formy z praktického hlediska postačí prověřit sestavovaný model? Sestavovaný model z praktického hlediska postačí prověřit na Boyce-Coddovu normální formu.
Strana č. 5
Relační databázové systémy
Datové normalizace:
1.
Jaké jsou cíle datové normalizace? Cíle datové normalizace jsou následující: • Umožnit reprezentaci každé relace v DB, • Získat účinné algoritmy vyhledávání, • Odstranit v relacích nežádoucí závislost při operacích vkládání, aktualizace a rušení, • Redukovat potřebu restrukturalizace při zavedené nového typu dat, • Zajistit neutrálnost souhrnu relací k četnosti dotazů.
2.
Vysvětlete termín reverzibilní proces? Reverzibilita procesu v našem případně znamená, že původní souhrn informací lze kdykoliv obnovit.
3.
Vysvětlete konstatování, že technika normalizace není deterministická? To, že technika datové normalizace není deterministická, ve svém důsledku znamená, že existuje více vyhovujících řešení.
4.
Uveďte hlavní výhody datové normalizace. Výhody datové • • •
5.
normalizace jsou následující: Odstranění nežádoucí duplicity dat Úspora kapacity paměťového média, Usnadnění aktualizace a výběrů požadovaných dat
Jaký je princip návrhu relačního datového schématu? Na data řešeného problému je nahlíženo jako na jednu tzv. univerzální relaci, která je následně dekomponována do většího počtu menších tabulek navzájem propojených klíči.
6.
Proč BCNF je někdy nazývána jako 3,5 normální forma? BCNF je vymezena stejným pravidlem jako 3NF, které je zpřísněno v tom, že platí i mezi hodnotami uvnitř primárního klíče.
7.
Co je výsledkem dekompozice? Výsledkem dekompozice je databáze v BCNF.
8.
Jaký je princip syntézy a co je jeho výsledkem? Princip syntézy spočívá v postupném skládání menších tabulek ve větší celky a výsledkem je schéma databáze v BCNF.
Strana č. 6
Relační databázové systémy
Ochrana dat: 1.
Z jakých důvodů je problematika ochrany dat v databázovém prostředí tolik důležitá? Problematika ochrany dat v databázovém prostředí je v porovnání s konvenčními zpracováními velmi důležitá z následujících důvodů: • Data jsou pro všechny uživatele uložena ve společné bázi dat, • Každý údaj je uložený v bázi dat pouze jednou, • Mezi daty existuje logická struktura, • Interaktivní přístup k bázi dat, • Interaktivní přístup neumožňuje provozu počítače zopakovat zpracování, • Vícenásobná současná aktualizace báze dat.
2.
Vysvětlete termín integritní omezení? Pojmem integritní omezení se označují pravidla vymezující korektnost uložených dat a rozhodující o proveditelnosti aktualizačních operací, které by mohly tento stav narušit.
3.
Kterými prostředky musí být garantována integrita databáze? Integrita databáze musí být garantována prostředky databázového serveru.
4.
Vysvětlete pojem zabezpečení entitní integrity. Zabezpečení entitní integrity vyžaduje zajištění jednoznačné identifikace každého řádků relační tabulky.
5.
Co garantuje referenční integrita? Referenční integrita databáze garantuje korektnost vztahů mezi logicky souvisejícími tabulkami.
6.
Jakými způsoby lze udržet referenční integritu? Referenční integritu lze udržet těmito způsoby: • Restriktivně, • Kaskádovitě dovést změny z logicky nadřízené tabulce podřízených záznamů, • Nahrazením hodnot cizích klíčů hodnotou neurčenou (NULL).
7.
do
všech
logicky
Vysvětlete termín doména. Doménou je chápána množina přípustných hodnot, kterých může určitý sloupec relační tabulky nabývat.
8.
Čím je provedena deklarativní realizace integritních omezení? Deklarativní zabezpečení integritních omezení je zajišťování prostředky umožňující specifikovat integritní omezení jako přímou součást definice struktury databáze. Zpravidla se jedná o rozšíření syntaxe příkazu definujícího.
9.
Objasněte termín databáze triggers. Databáze triggers představují pojmenované množiny příkazů uložené na serveru jako součást databáze, které jsou vázány na konkrétní aktualizující operaci s konkrétní relační tabulkou, a databázovým serverem jsou při výskytu dané operace vykonávány automaticky.
Strana č. 7
Relační databázové systémy
Dotazovací jazyky:
1.
K čemu slouží jazyk pro třídění dat – DCL: Tato část dotazovacího jazyka je označována jako jazyk pro řízení dat.
2.
Jaký je princip procedurálních dotazovacích jazyků? Procedurální dotazovací jazyky vyžadují zadání algoritmu nutného pro získání požadované informace.
3.
Jaký je princip neprocedurálních dotazovacích jazyků: Neprocedurální dotazovací jazyky vyžadují pouze specifikování podmínky, které má požadovaná odpověď obsahovat.
4.
Vysvětlete termín relačně úplný dotazovací jazyk. Relačně úplný dotazovací jazyk umožňuje řešit všechny operace relační algebry.
5.
Kdo zajišťuje standardizaci dotazovacího jazyka SQL? Standardizace SQL zajišťuje organizace ANSI.
6.
Jaké jazyky v sobě zahrnuje jazyk SQL? Jazyk SQL v sobě zahrnuje jazyk pro definici dat – DDL, jazyk pro manipulaci s daty – DML a jazyk pro řízení dat DCL.
7.
Vysvětlete termín dynamický SQL. Dynamický SQL je variantou vnořeného SQL, do hostitelského jazyka umožňující napsat programy, které i za chodu (nikoliv pouze při psaní programu) dovolují vkládat a spouštět SQL dotazy.
8.
Co zabezpečí přidání klíčových slov NOT NULL k popisu sloupce? Přidáním klíčových slov NOT NULL k popisu sloupce zabezpečí, že všechna pole v daném sloupci nesmí obsahovat nulové hodnoty.
9.
Jakým příkazem SQL lze modifikovat strukturu tabulky? Strukturu tabulky lze modifikovat pomocí příkazu ALTER TABLE.
10.
Co způsobí příkaz DROP TABLE student? Příkaz DROP TABLE student zruší relaci student.
11.
V čem se liší (kdy se použijí) klauzule WHERE a HAVING. Klauzule HAVING má obdobný význam jako WHERE, ale je určena (omezuje) souhrnné řádky definované pomocí GROUP BY.
12.
K čemu slouží klíčové slovo DISTINCT? Pomocí klíčového slova DISTINCT lze odstranit duplicitní řádky výběru.
13.
K čemu slouží klíčové slovo AS? Klíčové slovo AS umožňuje výstižněji přejmenovat záhlaví vybíraných sloupců v dotazu SELECT.
14.
Uveďte logické operátory v odpovídajícím pořadí jejich priority. Priorita uplatnění logických operátorů je následující: NOT, AND, OR. Strana č. 8
Relační databázové systémy
15.
K čemu slouží funkce COUNT(*)? Funkce COUNT(*) zjistí počet řádků v dané relaci.
16.
K čemu slouží predikát BEETWEN? Predikát BEETWEN slouží pro specifikaci intervalu hodnot ve výběrových podmínkách.
17.
Co určuje požadovanou skupinu v klauzuli GROUP BY? Požadovaná skupina v klauzuli GROUP BY je určena uvedením jména odpovídajícího sloupce.
18.
Uveďte obecný tvar úplně specifikace položky. Úplná specifikace položky používá tzv. tečkovou notaci ve tvaru <jméno – tabulky>.<jméno – sloupce>.
19.
Vysvětlete termín pohled (view). Pohled je tabulka, která není fyzicky uložena v databázi.
20.
Co způsobí příkaz GRANT ALL..? Příkaz GRANT ALL .. udělí veškerá oprávnění dotyčnému uživateli.
21.
Jaké výhody přináší používání SQL svému uživateli? Používání SQL přináší tyto následující výhody: • Snížení ceny na zaškolení pracovníků, • Přenositelnost vytvořené aplikace, • Délka života aplikace se zvyšuje, • Společný přístup k datům v heterogenním prostředí.
22.
Které vlastnosti SQL jsou nejvíce kritizovány? Mezi nejkritizovanější vlastnosti jazyka SQL patří: • Neexistence standardu, • Nelze definovat vlastní funkce, • Nedostatek ortogonality syntaxe, • Nelze programovat procedury ani definovat proměnné • Vstup a modifikace dat probíhá dávkovým způsobem pomocí příkazů INSERT a UPDATE, • SQL nepodporuje validace (kontrolu správnosti) dat na vstupu, • SQL neobsahuje prostředky běžného programování.
Strana č. 9
Relační databázové systémy
Koncepce systému ORACLE: 1.
K čemu slouží relační databázový stroj? Relační databázový stroj je hlavním nástrojem DB systém ORACLE a zajišťuje správu všech dat uložených v databázi.
2.
Jaká je struktura databáze v DB prostředku ORACLE? Databáze pod DB systémem ORACLE se skládají z následujících typů souborů: • Soubory s kódem programu, • Hostitelské databázové soubory, • Protokolační soubory, • Řídící soubory
3.
Co popisuje slovník dat? Slovník dat popisuje logickou strukturu dané databáze.
4.
Co obsahuje údaj ROWID?
ROWID představuje binární údaj obsahující adresu řádku. 5.
Vysvětlete termín slovník dat? Slovník dat představuje množinu uživatelských pohledů do systémového katalogu.
6.
K čemu slouží SQL*PLUS? SQL*PLUS představuje prostředek pro interaktivní a dávkovou komunikaci koncového uživatele s databázovým strojem ORACLE.
7.
Jakým způsobem se ukončuje příkaz SQL? SQL příkaz lze ukončovat středníkem, lomítkem anebo prázdným řádkem.
8.
Co uchovává příkazový BUFFER? Příkazový BUFFER uchovává aktuální příkaz s cílem jeho případně modifikace a opětovného odeslání.
9.
Pomocí kterého příkazu se vytváří příkazový soubor? Příkazový soubor se vytváří pomocí příkazu SAVE.
Strana č. 10