SQL

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

SQL (vyslovováno anglicky es-kjů-el ) je zkratka pro standardizovaný strukturovaný dotazovací jazyk, který je používán pro práci s daty v relačních databázích. SQL je nástupcem jazyka SEQUEL .

Historie SQL

V 70. letech +more_století'>20. století probíhal ve firmě IBM výzkum relačních databází. Bylo nutné vytvořit sadu příkazů pro ovládání těchto databází. Vznikl tak jazyk SEQUEL (Structured English Query Language). Cílem bylo vytvořit jazyk, ve kterém by se příkazy tvořily syntakticky co nejblíže přirozenému jazyku (angličtině).

K vývoji jazyka se přidaly další firmy. V r. +more 1979 uvedla na trh firma Relational Software, Inc. (dnešní Oracle Corporation) svoji relační databázovou platformu Oracle Database. IBM uvedla v roce 1981 nový systém SQL/DS a v roce 1983 systém DB2. Dalšími systémy byly např. Progress, Informix a SyBase. Ve všech těchto systémech se používala varianta jazyka SEQUEL, který byl přejmenován na SQL.

Relační databáze byly stále významnější, a bylo nutné jejich jazyk standardizovat. Americký institut ANSI původně chtěl vydat jako standard zcela nový jazyk RDL. +more SQL se však prosadil jako de facto standard a ANSI založil nový standard na tomto jazyku. Tento standard bývá označován jako SQL-86 podle roku, kdy byl přijat.

V dalších letech se ukázalo, že SQL-86 obsahuje některé nedostatky a naopak v něm nejsou obsaženy některé důležité prvky týkající se hlavně integrity databáze. V roce 1992 byl proto přijat nový standard SQL-92 (někdy se uvádí jen SQL2). +more Zatím nejnovějším standardem je SQL3 (SQL-99), který reaguje na potřeby nejmodernějších databází s objektovými prvky.

Standardy podporuje prakticky každá relační databáze, ale obvykle nejsou implementovány vždy všechny požadavky normy. A naopak, každá z nich obsahuje prvky a konstrukce, které nejsou ve standardech obsaženy. +more Přenositelnost SQL dotazů mezi jednotlivými databázemi je proto omezená.

Popis jazyka

SQL příkazy se dělí na čtyři základní skupiny: * data definition language (DDL), příkazy pro definici dat (CREATE, ALTER, DROP, …), * data manipulation language (DML), příkazy pro manipulaci s daty (SELECT, INSERT, UPDATE, DELETE, …), * data control language (DCL), ** transaction control commands (TCC), příkazy pro řízení transakcí (START TRANSACTION, COMMIT, ROLLBACK), ** příkazy pro řízení přístupových práv (GRANT, REVOKE), * ostatní nebo speciální příkazy (číslovače, schémata, ...)

Distribuované zpracování SQL

Architektura distribuovaných relačních databází (DRDA) byla navržena pracovní skupinou v rámci IBM v letech 1988 až 1994. DRDA umožňuje síťově připojeným relačním databázím spolupracovat při plnění požadavků SQL.

Interaktivní uživatel nebo program může zadávat příkazy SQL do místního RDB a přijímat tabulky dat a stavových indikátorů jako odpověď ze vzdálených RDB. Příkazy SQL lze také zkompilovat a uložit ve vzdálených RDB jako balíčky a poté je vyvolat podle názvu balíčku. +more To je důležité pro efektivní provoz aplikačních programů, které zadávají složité, vysokofrekvenční dotazy. Je to zvláště důležité, když se tabulky, ke kterým se má přistupovat, nacházejí ve vzdálených systémech.

Zprávy, protokoly a strukturální komponenty DRDA jsou definovány architekturou správy distribuovaných dat. Distribuované zpracování SQL ala DRDA se odlišuje od současných distribuovaných databází SQL.

Reference

Externí odkazy

[url=http://krokodata.vse.cz/SQL]Tutoriál SQL[/url] * [url=http://www.sallyx.org/sally/psql/]Tutoriál PostgreSQL, MySQL, SQLite a Oracle[/url]

Kategorie:Standardy ISO/IEC podle jména Kategorie:Deklarativní programovací jazyky

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top