马刺后卫帕蒂-米尔斯:一切重新开始 抱以0-0的心态
SQL (vyslovováno anglicky es-kj?-el [?s kju? ??]IPA) je zkratka (anglicky Structured Query Language) pro standardizovany strukturovany dotazovací jazyk, ktery je pou?íván pro práci s daty v rela?ních databázích. SQL je nástupcem jazyka SEQUEL (anglicky Structured English Query Language).
Historie SQL
editovatV 70. letech 20. století probíhal ve firmě IBM vyzkum 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 vyvoji jazyka se p?idaly dal?í firmy. V r. 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 novy systém SQL/DS a v roce 1983 systém DB2. Dal?ími systémy byly nap?. Progress, Informix[1] a SyBase. Ve v?ech těchto systémech se pou?ívala varianta jazyka SEQUEL, ktery byl p?ejmenován na SQL.
Rela?ní databáze byly stále vyznamněj?í, a bylo nutné jejich jazyk standardizovat. Americky institut ANSI p?vodně chtěl vydat jako standard zcela novy jazyk RDL. SQL se v?ak prosadil jako de facto standard a ANSI zalo?il novy standard na tomto jazyku. Tento standard byvá 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 tykající se hlavně integrity databáze. V roce 1992 byl proto p?ijat novy standard SQL-92 (někdy se uvádí jen SQL2). Zatím nejnověj?ím standardem je SQL3 (SQL-99), ktery reaguje na pot?eby nejmoderněj?ích databází s objektovymi 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. P?enositelnost SQL dotaz? mezi jednotlivymi databázemi je proto omezená.
Popis jazyka
editovatSQL 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?ístupovych práv (GRANT, REVOKE),
- ostatní nebo speciální p?íkazy (?íslova?e, schémata, ...)
Distribuované zpracování SQL
editovatArchitektura distribuovanych 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?ipojenym rela?ním databázím spolupracovat p?i plnění po?adavk? SQL.[2][3]
Interaktivní u?ivatel nebo program m??e zadávat p?íkazy SQL do místního RDB a p?ijímat tabulky dat a stavovych indikátor? jako odpově? ze vzdálenych RDB. P?íkazy SQL lze také zkompilovat a ulo?it ve vzdálenych RDB jako balí?ky a poté je vyvolat podle názvu balí?ku. 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 kterym se má p?istupovat, nacházejí ve vzdálenych systémech.
Zprávy, protokoly a strukturální komponenty DRDA jsou definovány architekturou správy distribuovanych dat. Distribuované zpracování SQL ala DRDA se odli?uje od sou?asnych distribuovanych databází SQL.
Reference
editovat- ↑ Informix. www.intax.cz [online]. [cit. 2025-08-07]. Dostupné v archivu po?ízeném dne 2025-08-07.
- ↑ REINSCH, R. Distributed database for SAA. IBM Systems Journal. 1988, ro?. 27, ?ís. 3, s. 362–369. Dostupné online [cit. 2025-08-07]. ISSN 0018-8670. doi:10.1147/sj.273.0362.
- ↑ HIRAO, T. Extension of the relational database semantic processing model. IBM Systems Journal. 1990, ro?. 29, ?ís. 4, s. 539–550. Dostupné online [cit. 2025-08-07]. ISSN 0018-8670. doi:10.1147/sj.294.0539.
Související ?lánky
editovatExterní odkazy
editovat- Obrázky, zvuky ?i videa k tématu SQL na Wikimedia Commons
- SQL v ?eské terminologické databázi knihovnictví a informa?ní vědy (TDKIV)
- Tutoriál SQL
- Tutoriál PostgreSQL, MySQL, SQLite a Oracle