12.07.2015 Views

DATABÁZOVÉ SYSTÉMY 1. Základní pojmy databázové ... - eAMOS

DATABÁZOVÉ SYSTÉMY 1. Základní pojmy databázové ... - eAMOS

DATABÁZOVÉ SYSTÉMY 1. Základní pojmy databázové ... - eAMOS

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>DATABÁZOVÉ</strong> <strong>SYSTÉMY</strong><strong>1.</strong> <strong>Základní</strong> <strong>pojmy</strong> <strong>databázové</strong> technologieÚvodDatabáze a <strong>databázové</strong> technologie mají velký vliv na rostoucí používání počítačů. Bylo by správnéříci, že databáze hrají kritickou roli ve všech oblastech, kde se počítače využívají (ekonomika,strojírenství, zemědělství, vzdělávání, zdravotnictví, právo, knihovnictví, …). Na druhé straně jenutno poznamenat, že s nástupem nových počítačových technologií se mění a zdokonalují dřívepoužívané <strong>databázové</strong> technologie tj. že se jedná o oboustranný vliv.Vývoj, historieVývoj nástrojů pro práci s databázemi odrážel požadavky reálného světa (praxe) – účelem bylopochopitelně vyvinout prostředky umožňující co nejefektivnější zpracování dat. Základydatabázových technologií souvisejí s hromadným zpracováním dat v podnicích, kdy bylo snahouvytvořit tzv. ASŘP (automatizovaný systém řízení dat podniku). Jako programovací jazyk se tehdyv hojné míře používal COBOL a eventuelně PL/<strong>1.</strong>První systémy řízení bází dat (SŘBD) se objevují v 2. polovině 60. let, vycházejí ze dvou přístupů- soubory dat obsahující záznamy pospojované prostřednictvím ukazatelů (síťové a hierarchickédatabáze)- fyzicky nezávislé soubory dat (relační databáze)První přístup zjednodušoval programování vazeb mezi daty, existující vazby mezi daty bylyrealizovány už při ukládání dat. Druhý přístup pro změnu disponuje tak silnými nástroji, jako jerelační algebra, relační kalkul a dotazovací jazyky.Rozvoj relačních databázových systémů v 80. letech a jejich uplatnění v praxi (minulé i současné)by mohl vést ke klamnému závěru, že relace či tabulka je pro aplikace jediná a nejlepší možnost.V řadě případů se ale ukazuje, že relační databáze není vždy to optimální řešení (viz textovédatabáze, mapy, seismická data, snímky ze satelitů, inženýrské databáze, EKG, rentgenová data …).S rozvojem objektově orientovaných technologií a jejich využitím i v databázových systémech sezdálo, že řešením výše uvedených problémů je objektová technologie. Objekty dokonce mělynahradit tabulky a objektová technologie měla vítězně přivést databáze do třetího tisíciletí.Současnost ukazuje, že optimální patrně bude něco jako kompromis v podobě objektově relačníchdatabází. Ve světě sice existuje v provozu ještě mnoho hierarchických i sítových databází, nicménědlouhodobým trendem vždy byl přechod na relační databáze. Příliš mnoho na tom nemění anidnešní tendence k objektové orientaci.ChronologieSíťové <strong>databázové</strong> systémy1965 – konference o databázových jazycích (CODASYL) se svým výborem Database Task Group(DBTG)- snaha vytvořit koncepci <strong>databázové</strong>ho systému1971 – zpráva „The DBTG April 1971 Report" – definice základních DB pojmů (schéma databáze,jazyk pro definici schématu …)


1978 – výbor DBTG rozpuštěn, ve tvorbě standardů pokračuje DDLC (Data Description LanguageCommittee) a PLC (Programming Language Committee)1973, 1987, 1981 – aktualizace původního modelu CODASYL – implementace IDS II, DMS 1100,DBMS 11, TOTAL, u nás nejužívanější IDMS1984 – rozpuštěn DDLCHierarchické databázekonec 60. let – nemají standard, vycházejí ze SŘBD IMS (Information Management Systém fy IBMa North American Aviation pro program Apollo1967 – dokončení projektu1968 – další vývoj systému přebírá jiný tým, komerční verze IMS se stále používá na sálovýchpočítačích (verze IMS/VS běží pod MVS)Relační databáze1970 – článek E. F. Codda (pracovníka IBM) v časopise Communications of ACM – data jsouuložena v izolovaných souborech, data už nelze strukturovat, ale mění se úroveň pohledu na data –data jsou chápány jako tabulky, pro manipulaci s nimi jsou k dispozici nástroje jako relační algebraa kalkul.1974 – jazyk Sequel (později SQL)Tento princip dovoloval úsporný přístup k datům, ale značně neefektivním způsobem. Tabulky totižpředstavovaly nezávislé soubory, takže bylo poněkud problematické a složité zajistit dostatečněefektivní postup při provádění dotazů. Uplynulo skoro 10 let, než se relační <strong>databázové</strong> technologiedostaly na takovou úroveň, aby byl jejich výkonu v praxi srovnatelný se stávajícími síťovými ahierarchickými DBS.<strong>Základní</strong> <strong>pojmy</strong>Databáze (velmi obecná definice) – souhrn dat, která spolu logicky souvisejí, patří k sobě, jsounějakým způsobem svázána (ne vždy je databáze realizována a zpracovávána pomocí prostředkůVT)Databáze (dle Wikipedie) je určitá uspořádaná množina informací (dat) uložená na paměťovém médiuPříklad <strong>1.</strong>1: Telefonní seznam realizovaný jakonotýsekabecedně uspořádaná tištěná knihadatabáze v mobilním telefonudatabáze v PC spravovaná prostřednictvím specielního softwarudatabáze na webovém serveru přístupná pomocí internetového prohlížečePoznámka: Tato definice je velmi obecná, neboť přesně nevymezuje daný pojem (slova na stránceknihy spolu taky logicky souvisejí, ale nedá se říci, že se jedná o databázi)Data chápeme jako známá fakta, která se dají zaznamenat a mají určitý význam, smysl (v tomtopřípadě nerozlišujeme mezi <strong>pojmy</strong> informace a data)Databázová technologie – unifikovaný soubor pojmů, prostředků a technik sloužící pro vytvářeníinformačních systémů. Zabývá se řízením (správou) velkého množství perzistentních,konzistentních, spolehlivých, sdílených dat


Vlastnosti databáze:reprezentuje nějaké aspekty reálného světapředstavuje logicky spjatý souhrn dat s daným významem (náhodně uspořádaný soubor datse v korektním slova smyslu nebere jako databáze)je navržena, zkonstruována a spravována s určitým záměrem, na datech určených kespecifickým účelům, má skupinu určitých uživatelů a specifické operaceJinými slovy, databáze má určitý zdroj, z něhož se odvozují data, určitý stupeň interakces událostmi reálného světa a uživatele, kteří jsou zainteresováni na obsahu databáze. Databáze můžebýt různě velká, mít různě komplikovanou strukturu, může být vytvářena a spravována ručně nebopomocí prostředků VTPříklad <strong>1.</strong>2: různě velké a různě spravované databázeMzdová a osobní agenda malé firmy (cca 10zaměstnanců) – ručně zpracovávanáKartotéka v knihovně – ručně nebo počítačově vedenáSpráva důchodového a sociálního zabezpečeníDaňový úřadKatastrální úřadSystém řízení báze dat (SŘBD)Jedná se o souhrn programů, postupů a metod, které umožňují uživateli vytvářet a spravovatdatabáze. Jedná se o obecně použitelný softwarový systém se schopnostmi umožňujícími definovat,vytvářet a spravovat databáze pro nejrůznější aplikacedefinice databáze – specifikace datových typů, struktur a podmínek omezujících data(integritních omezení)konstrukce databáze – proces ukládání dat samotných na vhodné nosiče dat, který je řízenSŘBDspráva databáze, přístup, manipulace s daty zahrnuje dotazovací a vyhledávací funkce,aktualizační operace, generace výstupů (sestav a nejrůznějších zpráv)Poznámka: Samozřejmě že ne každá počítačem spravovaná databáze musí být nutně univerzálnímdatabázovým systémem, to by se v řadě případů nevyplatilo ani finančně, ani z hlediska konstrukcea správy databáze. Mnohdy je rozumnější vytvořit si (nechat si vytvořit) specielní aplikaci.Databázový systém = databáze + SŘBD


Obrázek <strong>1.</strong>1Příklad <strong>1.</strong>3Část univerzitní databázePŘEDNÁŠKANázevČíslo Hodinovpřednášky á dotaceKatedraÚvod do OOP I123 3 InformatikaDiskrétní matematika M412 4 MatematikaMatematická analýza M421 4 MatematikaAlgoritmy I125 4 Informatika


STUDENTJméno Číslostudenta studentaRočník KatedraAdamec Petr 1111 1 InformatikaDvořáková Jana 2221 2 MatematikaKalousek Jiří 1113 1 PsychologieZelenková Eva 1118 3 BohemistikaOBORY STUDIAId oboruIdpřednáškySemestr Rok UčitelO11 I123 zimní 96 SoučekO11 I123 letní 96 ZelenkaO12 I125 zimní 96 MoravecO12 M412 zimní 96 BláhaO12 M412 zimní 96 SuchánekPROSPĚCH Student Předmět Hodnocení1118 B123 velmi dobře2221 I123 výborně2221 I125 dobře1111 I123 nevyhovělCharakteristika <strong>databázové</strong>ho přístupuDatabázový způsob zpracování souborů se liší v řadě charakteristik od tradičního přístupu připrogramování souborových aplikací. V tradičním souborovém zpracování každý uživatel definuje aimplementuje soubory potřebné pro danou specifickou aplikaci. Například jeden uživatel udržuje aspravuje studijní agendu – veškerá nutná data týkající se studijních oborů, rozvrhu, zápisů studentů,zkoušek, zápočtů, jiný uživatel má na starosti ubytování studentů, další zase stravování studentů. Ikdyž všichni tito uživatelé pracují se stejnými daty, přesto každý z nich používá své vlastníizolované soubory (se specifickou strukturou), takže se data pochopitelně duplikují.Problémy:– redundance dat s sebou přináší problém aktualizace dat a možné nekonzistence dat– víceuživatelský přístup– ochrana dat– zajištění integrity dat – kontrola přípustných hodnot dat v jednotlivých souborech můžepředstavovat složité programy– problém se vztahy mezi objekty – jak dodržet existující vazby (složitý kód)– realizace dotazů – co uživatelský dotaz, to programDatabázový přístup má tu výhodu, že veškerá data jsou uložená jen jednou, jsou přístupná pronejrůznější uživatelePoznámka: Data se většinou nevyskytují redundantně, ale někdy je to v rámci snížení časové režiežádoucí<strong>Základní</strong> charakteristikou <strong>databázové</strong>ho systému je, že neobsahuje jen data, ale zahrnuje ikompletní definici a popis databáze. Tato definice je uložena v tzv. systémovém katalogu


(repository), informacím v katalogu se říká metadata. Katalog je využíván SŘBD a příležitostně iuživateli databáze, pokud potřebují znát údaje o struktuře databáze. SŘBD musí být vytvořen tak,aby mohl stejně dobře spravovat libovolnou databázi tj. pro získání informací o struktuře souborůkonkrétní databáze, informace o typech a formátech dat se nutně musí odkazovat na katalog.Tradiční zpracování dat – data jsou typicky součástí programu, program je tedy omezen na jednukonkrétní databázi, při libovolné změně struktury dat je třeba přepsat odpovídajícím způsobemvšechny programy, které k danému datovému souboru přistupujíPříklad <strong>1.</strong>4:definice dat pomocí klasických programovacích jazyků- PASCAL (definice typů a záznamů)- C (definice struktur)- COBOL (popis dat v DATA DIVISION)Databázové technologie - SŘBD musí zvládnout libovolnou databázi pochopitelně s využitíminformací z katalogu. SŘBD je psáno nezávisle na konkrétních souborech, struktura dat je uloženav datovém katalogu (datový slovník). Při změně struktury dat není nutné zasahovat do kódu tj.měnit nějakým způsobem programy SŘBD, neboť provedená změna se odrazí v katalogu – tutovlastnost nazýváme program – datová nezávislost.OO programovací jazyky a OO databáze – dovolují definovat operace s daty jako součást popisudat tj. v popisu daného objektu (třídy) jsou dohromady zahrnuta data (atributy) a funkce promanipulaci s těmito daty (metody), přesněji řečeno pouze interface těchto funkcí (hlavičky funkcí).Vlastní implementace je psána odděleně od popisu dat a dá se tedy změnit, aniž je nutné měnitinterface. Uživatel tak může pracovat s daty prostřednictvím těchto operací nezávisle na tom, jakjsou implementovány. Tento jev označujeme jako nezávislost program – operace. Odtud dáleodvozujeme pojem datová abstrakcedatová abstrakce = nezávislost program – data + nezávislost program – operaceJak už bylo dříve řečeno, při <strong>databázové</strong>m přístupu je detailní struktura a organizace každéhosouboru uložena v katalogu. Databázoví uživatelé se odkazují na konceptuální reprezentaci souborůa SŘBD vybírá z katalogu detaily o uložení jednotlivých souborů podle potřeby. K zajištění tétodatové abstrakce se používá řada databázových modelů, o nichž se bude dále hovořit.Současný vývojový trend směrem k objektově-orientovaným databázím posouvá abstrakci o jednuúroveň výše, protože zahrnuje nejen datovou strukturu, ale i operace s daty. V tomto smyslu sehovoří o abstraktních operacích.Příklad <strong>1.</strong>5Operace VypocetPrumeru se aplikuje na objekt Student s účelem zjistit průměrný prospěch studenta– uživatel může tuto operaci použít, aniž by věděl, jak vlastně je implementována.(Má vlastně k dispozici řadu takovýchto operací nad objekty.)Podpora vícenásobných pohledů na data - databáze je využívána mnoha uživateli, z nichž každýobecně může mít jiný pohled na data, srozumitelněji řečeno každý uživatel potřebuje jen vybranádata z databáze pro danou konkrétní úlohu, tj. každý si vybere nebo odvodí data, která potřebuje, oostatních údajích v databázi nemusí ani vědět (souvisí i s ochranou dat viz dále)Sdílení dat a provádění víceuživatelských transakcí - SŘBD musí zajistit současný přístupk datům pro více uživatelů, musí obsahovat software potřebným k řízení vícenásobného přístupuk datům, tj. pokud se několik uživatelů současně pokouší aktualizovat tatáž data, aby tato činnost


neprobíhala náhodně a nekontrolovaně, aby výsledky těchto transakcí byly správné. (Musí být např.zajištěno, že jedna místenka ve vlaku nebude přidělena vícekrát různými úředníky za přepážkou.) –transakční zpracování. SŘBD by měl také poskytovat prostředky k zajištění bezpečnosti dat azabránění neautorizovanému přístupu.Shrnutí3 základní charakteristiky <strong>databázové</strong> technologieoddělení (izolace) programu a datpodpora vícenásobných pohledůpoužití katalogu k uložení informací o databáziIdeální vlastnosti <strong>databázové</strong>ho systémuvyšší datová abstrakce – SŘBD zahrnují manipulační jazyky pro práci s datovýmistrukturami vyšší úrovněnezávislost aplikačních programů na změnách ve fyzickém uložení dat – změnafyzické struktury dat nepředstavuje potřebu měnit aplikační programyochrana dat před neoprávněným přístupem a před poruchami – SŘBD disponujemechanismy zajišťující přístup k datům pouze oprávněným uživatelům, zahrnujeobnovovací systémy umožňující provést rekonstrukci dat po fyzické či jiné havárii systémuneredundantnost dat – každý údaj je v databázi většinou uložen jen jednousdílení dat – v jednom konkrétním časovém okamžiku mohou být tatáž data využívánavíce uživateli – z různých aplikací může být zajištěn současný přístup ke stejným datovýmzdrojůmkonzistence dat - SŘBD hlídá, aby v rámci datových aktualizací nedošlo k uvedení dat dotakového stavu, který by nevyhovoval integritním omezením dat (podmínky omezující datapodle reálných požadavků na data)Osoby na scéněSprávce databáze (administrátor databáze) - je zodpovědný za správu databáze a i SŘBD.Přiděluje a odebírá přístupová práva, koordinuje a sleduje využívání databáze, stará se o využívánísoftwarových a hardwarových zdrojů. Řeší problémy týkající se porušení bezpečnosti nebonapř.příliš vysoké doby odezvy systému. Ve větších organizacích má k dispozici asistenty, kteří mupomáhají zajišťovat bezproblémový chod a správu databáze.Databázoví návrháři - zodpovídají za určení dat, která se budou ukládat do databáze, za výběrodpovídající struktury pro uložení data, za komunikace se všemi potenciálními uživateli databáze aza návrh databáze, který nejlépe vyhovuje požadavkům uživatelů.Systémoví analytici - definují požadavky koncových uživatelů (specielně „naivních“ uživatelů) aformulují na základě těchto požadavků specifické úlohy tzv. „uzavřené transakce“ (cannedtransaction)Aplikační programátoři - implementují specifické požadavky systémových analytiků jakoprogramy, testují, ladí, vytvářejí dokumentaci a udržují v chodu tyto specifické transakce.


Osoby za scénounávrháři SŘBD – navrhují a implementují SŘBD moduly a interface jako softwarové balíky(jedná se např. implementaci <strong>databázové</strong>ho katalogu, dotazovacího jazyka, přístupu k datům).návrháři nástrojů – navrhují dodatečné nástroje a pomůcky jako je např. jazyková podpora,specielní grafické rozhraní, simulace a generace testovacích dat, generace sestav …operátoři a obslužný personál – mají na starosti aktuální chod a obsluhu hardwaru asoftwaruKoncoví uživatelé databázepříležitostní uživatelé - potřebují nejrůznější informace, k jejichž získání používají obvykledotazovací jazyk nebo různé prohlížeče a manažerynaivní uživatelé - využívají hotové aplikační programy pro provádění transakcí v databázi(bankovní transakce, rezervace letenek, pokojů v hotelích, aut v půjčovnách…)zkušení uživatelé - inženýři, vědci, obchodní manažeři, … kteří jsou dobře obeznámenis možnostmi a vlastnostmi SŘBDstand-alone uživatelé


Obrázek <strong>1.</strong>2:SŘBD poskytuje uživateli tzv. konceptuální reprezentaci dat - konceptuální schéma, které dourčité míry formalizovaně, ale dostatečně srozumitelně a názorně popisuje danou aplikaci (reálnýsvět), nikoliv fyzickou reprezentaci dat. Konceptuální schéma je implementačně nezávislé a sloužíjako společný základ prochápání objektů uživateli, projektantyintegraci uživatelských pohledů a návrh implementacezobrazení mezi uživatelskými pohledy a fyzickým uložením dat


Datový model - typ datové abstrakce používající se jako vyjádření konceptuální reprezentace(logická úroveň - objekty, jejich vlastnosti, vztahy, nikoliv způsob uložení dat). Datový modelvlastně „ukrývá“ detaily o fyzické reprezentaci dat, což většinu uživatelů nemusí zajímat nebo tomuani nerozumějí. Dříve uvedený př. <strong>1.</strong>3 je konceptuální reprezentací databáze univerzity.Příklad <strong>1.</strong>6 : Fyzická reprezentace př. <strong>1.</strong>3typeSTUDENT = recordjmeno : string [30];cislo : integer;rocnik : <strong>1.</strong>.5;katedra : string[20];end;Třístupňová (tříúrovňová) architektura <strong>databázové</strong>ho systému<strong>1.</strong> Vnitřní (interní) úroveň má interní schéma, které popisuje fyzickou strukturu databáze –používá fyzický datový model a popisuje kompletní detaily týkající se uložení dat na nosičíchdat a přístup k datům2. Konceptuální úroveň má konceptuální schéma, které popisuje strukturu (logickou) celédatabáze pro celé společenství uživatelů – zaměřuje se na popis entit, datových typů, relací,uživatelských operací a integritních omezení. Na této úrovni je použit vysokoúrovňovýdatový model nebo implementační datový model3. Externí úroveň (úroveň založenou na uživatelském pohledu) představuje celou skupinuexterních schémat nebo uživatelských pohledů. Popisuje se vždy ta část databáze, o kterouse zajímá jeden konkrétní uživatel, zbytek dat zůstává před tímto uživatelem skryt. Na tétoúrovni se také používají vysokoúrovňové či implementační datové modely.Poznámka:Většina SŘBD neodděluje striktně tyto tři úrovně, ale řada z nich toto třístupňové schémapodporuje. Některé SŘBD zahrnují fyzickou úroveň do konceptuálního schématu. Ve většiněSŘBD podporujících uživatelské pohledy je externí schéma specifikováno v tomtéž modelu, kterýzahrnuje i konceptuální informace.Poznámka: Třístupňová architektura je pouze popis dat! Jediná data, která skutečně existují,existují na fyzické úrovni. Je-li SŘBD postaven na třístupňové architektuře, pak se každý uživatelmůže odkazovat na své vlastní externí schéma. Ovšem SŘBD musí transformovat požadavekvznesený na externí schéma na požadavek na konceptuální schéma a odtud na požadavek na interníschéma. Pokud se jedná například o výběrový požadavek (dotaz), pak se odpovídající data, kterábyla vlastně vybraná ze skutečně existujících fyzických dat uložených na vhodném nosiči, musípřeformátovat do tvaru odpovídajícímu příslušnému externímu uživatelskému pohledu. Procestransformace uživatelských požadavků a výsledků zpracování mezi jednotlivými úrovněmi senazývá mapování. Tento proces může mít za následek zvýšení časové režie, takže některé SŘBD,specielně ty, co podporují malé databáze, nepodporují externí pohledy. (Nicméně tím se neodstranímapování mezi úrovní konceptuální a interní.)


Obrázek <strong>1.</strong>3:


Třístupňová architektura se používá k vysvětlení koncepce datové nezávislosti – definuje se jakoschopnost změnit schéma na jedné úrovni, aniž je nutné změnit schéma úrovně vyšší. Rozlišujemedva typy datové nezávislosti:logická datová nezávislost – je možné změnit konceptuální schéma a není nutné měnitexterní schéma (můžeme „rozšířit“ databázi – přidat záznamy nebo datové položky nebo zúžitdatabázi – zrušit záznamy a položky a není nutno měnit externí schéma – tedy zapředpokladu, že jsme neodebrali něco, co je zahrnuto do externího schématu).fyzická datová nezávislost – možnost změnit interní schéma bez toho, že by bylo nutnézměnit konceptuální či dokonce externí schéma.Poznámka: Kdykoliv uvažujeme víceúrovňový SŘBD, jeho katalog (datový slovník) musí býtrozšířen o informace potřebné k mapování požadavků a dat mezi jednotlivými úrovněmi – SŘBDk tomu používá dodatečný software. Pokud je zajištěna datová nezávislost, znamená to, že změnouschématu v jedné úrovni se nemusí měnit jiné schéma – vlastně se mění jen mapování, nemá to vlivna samotný aplikační software. Ovšem dvouúrovňové mapování může během kompilace čiprovádění dotazů nebo programu být poněkud neefektivní, takže jen málo SŘBD implementujeplně třístupňovou architekturu.Architektura DB systémucentralizovaná• jednovrstvá• izolovaná• terminál – DB server (viz obrázek <strong>1.</strong>4)• PC – file server (viz obrázek <strong>1.</strong>5)dvouvrstvá• klient „front-end“ – server „back-end“ (viz obrázek <strong>1.</strong>6)třívrstvá• klient – aplikační server – DB server (viz obrázek <strong>1.</strong>7)distribuovaná• více DB serverů (viz obrázek <strong>1.</strong>8)• replikace téže DB• vybrané podmnožiny DB


Obrázek <strong>1.</strong>4


Obrázek <strong>1.</strong>5


Obrázek <strong>1.</strong>6Obrázek <strong>1.</strong>7


Obrázek <strong>1.</strong>8Typy DBSpředrelační• hierarchické• síťovérelační• architektura mainframe• architektura PC - file server• architektura klient - serverpostrelační• objektově relační• objektově orientované• deduktivní• distribuované


Databázové jazykyJakmile je hotov návrh databáze a je vybrán určitý SŘBD k její implementaci, první krok, kterýnásleduje, je specifikovat konceptuální a interní schéma a potřebná mapování mezi nimi.Jazyk pro definici dat (JDD) – pomocí tohoto jazyka se definuje konceptuální a interní schémadatabáze – je používán návrháři databáze.Jazyk pro definici uložení dat (storage definition language) – používá se ke specifikaci interníhoschématu v těch systémech, v nichž je striktně oddělena konceptuální a interní úroveň. Promapování mezi jednotlivými úrovněmi se pak používá jeden z výše uvedených jazyků.Jazyk pro definici pohledu (JDP) – používá se k definování nejrůznějších uživatelských pohledů(souvisí s externí úrovní - viz třístupňová neboli tříúrovňová architektura).Jazyk pro manipulaci dat (JMD) – používá se jako jazyk pro manipulaci s daty v databázi tj.nejrůznější výběry dat, vkládání nových údajů, opravy stávajících dat a rušení údajů. Existují dvahlavní typy těchto jazykůneprocedurální (vysokoúrovňové) jazyky používající se k provádění komplexníchdatabázových operací. SRBD dovoluje, aby příkazy těchto vysokoúrovňových jazyků bylyprováděny buďto interaktivně z terminálů (pak hovoříme obvykle o dotazovacích jazycích),nebo jsou tyto příkazy zahrnuty jako součást univerzálních (víceúčelových) programovacíchjazyků.nízkoúrovňové jazyky pro manipulaci dat musí být zahrnuty do univerzálního programovacíhojazyka. Tyto druhy JMD typicky vybírají jednotlivé záznamy z databáze a zpracovávají každýzáznam odděleně. (Jsou proto označovány jako záznamově orientované jazyky, protože pracujívždy s jedním záznamem tzv. record -in-time jazyky, na rozdíl od vysokoúrovňových JMD,které pomocí jediného příkazu zpracovávají mnoho záznamů tj. set-in-time JMD.)Poznámka:Pokud jsou JMD součástí univerzálního programovacího jazyka, pak je tento označován jakohostitelský jazyk a JMD je chápán jako jeho subjazyk.Současné jazykyrelační systémy – základem je jazyk SQL (SQL87, SQL89, SQL92, SQL99 …) poslednístandard ISO/IEC 9075-1:2003jiné typy db jazyka – SŘBD dBASE, FoxPro …obecné programovací jazyky• použití rozhraní OCI, ODBC, JDBC, …• začlenění speciální příkazy – Pascal, C, …jazyky 4GL (Fourth Generation Language) – formulářové jazyky – tvorba uživatelskypříjemného rozhraní – okna, formuláře, menu


Literatura:[1] ELMASRI, R., NAVATHE, S., B. Fundamentals of Database Systems, 5th edition. Addison-Wesley, 2007. ISBN 978-03-213-6957-4.[2] SILBERSCHATZ, A., KORTH H. F., SUDARSHAN S. Database System Concepts, 5 thedition, New York: McGraw-Hill, 2006. ISBN 978-0-07-295886-7[3] CONOLLY, T., BEGG, C., HOLOWZAK R. Profesionální průvodce tvorbou databází. Praha:Computer Press, a. s., 2009. ISBN 978-80-251-2328-7.[4] HERNANDEZ, M., J. Návrh databází. Praha: Grada, 2006. ISBN 80-247-0900-7.[5] POKORNÝ, J. Databázová abeceda. Veletiny: Science, 1998, ISBN 80-86083-02-2.[6] POKORNÝ, J., HALAŠKA, I. Databázové systémy, 2. vydání. Praha Vydavatelství ČVUT,2003, ISBN 80-01-02789-9.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!