Table of Contents
18. Dotazovací jazyk
Vysvětlení pojmu a účelu, základní členění, standardizace, příklady implementace.
Úloha
Předpoklady: Pracujete v projektu vývoje IS. Jako cílové implementační prostředí byl zákazníkem určen databázový systém Oracle. Zákazník se obává, zda navrhovaný systém bude dostatečně progresivní a ptá se, zda práce s daty v něm bude skutečně neprocedurální, neboť na semináři od firmy Oracle slyšel, že to tak má být.
Zadání:
- Posuďte, zda je dotazovací jazyk skutečně neprocedurální, nebo ne.
- Co odpovíte svému zákazníkovi?
Teorie
Dotazovací jazyk umožňuje dávat i nepříliš kvalifikovaným uživatelům dotazy do databáze – snaha o to, aby se podobal jazyku běžnému. Je neprocedurální, tozn. říká co se má dělat, nikoliv jak. Nejznámější variantou je SQL, existují i tzv. tabulkové – QBE, QBF – uživatel „naklikává“ parametry výběru do tabulky. Je to user friendly, ale jinak k prdu.
SQL – relační algebra (restrikce, projekce, spojení)
transakce
primární, sekundární klíče
kritéria relačnosti
Subdotazy – vnitřní dotaz pracuje nad výstupem vnějšího dotazu.
Dotazovací jazyky se dělí na:
DDL – data definition language – pro definici struktury dat
DML – data manipulation language – SELECT, INSERT, UPDATE, DELETE
DCL – data control language – pro ovládání databáze
Standardizace:
1974 – jazyk SEQUEL – IBM
1979 – Oracle
v 80. standardizace ANSI, ISO
1992 – SQL2
připravuje se verze SQL3 (snad)
Existuje spousta implementací, které daný standard dodržují, nicméně dialekty se značně liší.
Praxe
Jo je. Ať si nedělá starosti.
