Procházet otázky :: SZZ na MFF UK

#

- Hlavní strana
- Okruhy
- Projít
- Stáhnout
- Co je potřeba
- Chci přispět
- Kredity

Hledat:

## Prohlížení státnicových textů

### Standardy SQL

SQL (Structured query language) je standardní jazyk pro přístup k relačním databázím (a dotazování nad nimi). Je zároveň jazykem pro definici dat (definition data language), vytváření a modifikace schémat (tabulek), manipulaci s daty (data manipulation language), vkláání, aktualizace, mazání dat, řízení transakcí, definici integritních omezení aj. Jeho syntaxe odráží snahu o co nejpřirozenější formulace požadavků - je podobná anglickým větám.

SQL je standard podle norem ANSI/ISO a existuje v několika (zpětně kompatibilních) verzích (označovaných podle roku uvedení):

SQL 86
  - první nástřel, průnik implementací SQL firmy IBM
SQL 89
  - malá revize motivovaná komerční sférou, mnoho detailů ponecháno implementaci
SQL 92
  - mnohem silnější a obsáhlejší jazyk. Zahrnuje už
  - modifikace schémat, tabulky s metadaty,
  - vnější spojení, množinové operace
  - kaskádové mazání/aktualizace podle cizích klíčů, transakce
  - kurzory, výjimky
  Standard existuje ve čtyřech verzích: Entry, Transitional, Intermediate a Full.
SQL 1999
  - přináší mnoho nových vlastností, např.
  - objektově-relační rozšíření
  - nové datové typy - reference, pole, full-text
  - podpora pro externí datové soubory, multimédia
  - triggery, role, programovací jazyk, regulární výrazy, rekurzivní dotazy ...
SQL 2003
  - další rozšíření, např. XML management

Komerční systémy implementují SQL podle různých norem, někdy jenom SQL-92 Entry, dnes nejčastěji SQL-99, ale nikdy úplně striktně. Některé věci chybí a naopak mají všechny spoustu nepřenositelných rozšíření - např. specifická rozšíření pro procedurální, transakční a další funkcionalitu (T-SQL (Microsoft SQL Server), PL-SQL (Oracle) ). S novými verzemi se kompatibilita zlepšuje, často je možné používat obojí syntax. Přenos aplikace za běhu na jinou platformu je ale stále velice náročný - a to tím náročnější, čím víc věcí mimo SQL-92 Entry obsahuje.Pro otestování, zda je špatně syntax SQL, nebo zda jen daná databázová platforma nepodporuje některý prvek, slouží SQL validátory (které testují SQL podle norem.