Sdílet prostřednictvím


Strukturovaný dotazovací jazyk (SQL)

Typický DBMS umožňuje uživatelům ukládat, přistupovat k datům a upravovat je uspořádaným, efektivním způsobem. Uživatelé DBMS byli původně programátory. Přístup k uloženým datům vyžadoval napsání programu v programovacím jazyce, jako je COBOL. I když tyto programy byly často napsány tak, aby prezentovat přátelské rozhraní pro netechnického uživatele, přístup k datům samotný vyžadoval služby znalého programátora. Neformální přístup k datům nebyl praktický.

Uživatelé nebyli s touto situací úplně spokojení. Ačkoli mohli přistupovat k datům, často vyžadovalo přesvědčit programátora DBMS, aby napsal speciální software. Pokud například prodejní oddělení chtělo zobrazit celkový prodej v předchozím měsíci jednotlivými prodejci a chtělo by tyto informace uspořádat v pořadí podle délky služby každého prodejce ve společnosti, měla dvě možnosti: Buď už existoval program, který umožnil přístup k informacím přesně tímto způsobem, nebo oddělení muselo požádat programátora, aby napsal takový program. V mnoha případech to bylo více práce, než stojí za to, a vždy to bylo nákladné řešení pro jednorázové nebo ad hoc dotazy. Vzhledem k tomu, že více a více uživatelů chtělo snadný přístup, tento problém se zvětšil a zvětšil.

Povolení přístupu uživatelů k datům ad hoc vyžaduje, aby jim poskytl jazyk, ve kterém mají vyjádřit své žádosti. Jeden požadavek na databázi je definován jako dotaz; takový jazyk se nazývá dotazovací jazyk. Pro tento účel bylo vyvinuto mnoho dotazových jazyků, ale jedním z nich se stal nejoblíbenější: Structured Query Language, vynalezený v IBM v roce 1970s. Běžně se to označuje zkratkou, SQL a je vyslovována jak jako "ess-cue-ell", tak jako "pokračování". SQL se stal standardem ANSI v roce 1986 a standardem ISO v roce 1987; používá se dnes v mnoha systémech pro správu databází.

I když SQL vyřešil ad hoc potřeby uživatelů, potřeba přístupu k datům počítačovými programy neodejde. Ve skutečnosti většina přístupu k databázi byla (a je) programová, ve formě pravidelně plánovaných sestav a statistických analýz, programů zadávání dat, jako jsou programy pro zadávání objednávek, a programy pro manipulaci s daty, jako jsou programy používané k odsouhlasení účtů a generování pracovních objednávek.

Tyto programy také používají SQL pomocí jedné z následujících tří technik:

  • Embedded SQL, ve kterém jsou příkazy SQL vloženy do hostitelského jazyka, jako je C nebo COBOL.

  • Moduly SQL, ve kterých jsou příkazy SQL kompilovány do DBMS a volány z hostitelského jazyka.

  • Rozhraní na úrovni volání nebo rozhraní příkazového řádku, které se skládá z funkcí volaných pro předávání příkazů SQL do DBMS a načtení výsledků z DBMS.

Poznámka:

Jedná se o historický omyl, že se termín 'call-level interface' používá místo aplikačního programovacího rozhraní (API), což je jiný termín pro totéž. V databázovém světě se rozhraní API používá k popisu samotného SQL: SQL je rozhraní API pro DBMS.

Z těchto možností je vložený SQL nejčastěji používaný, i když většina hlavních DBMS podporuje proprietární rozhraní CLI.

Tato část obsahuje následující témata.