SQL: Porovnání verzí
m (7 revizí: IMPORT Q-S: import stránek z hlavního jmenného prostoru z KiskWiki (http://kisk.phil.muni.cz/)) |
|||
(Není zobrazena jedna mezilehlá verze od jednoho dalšího uživatele.) | |||
Řádek 87: | Řádek 87: | ||
Každá klauzule začíná klíčovým slovem, jako jsou např. <code>SELECT</code> nebo <code>CREATE</code>. Některé klauzule jsou povinné, jiné volitelné. Každá implementace SQL používá kromě standardních klauzulí, daných konvencemi ANSI/ISO, své vlastní klauzule, někdy se i činnost standardních klauzulí mírně či více liší. | Každá klauzule začíná klíčovým slovem, jako jsou např. <code>SELECT</code> nebo <code>CREATE</code>. Některé klauzule jsou povinné, jiné volitelné. Každá implementace SQL používá kromě standardních klauzulí, daných konvencemi ANSI/ISO, své vlastní klauzule, někdy se i činnost standardních klauzulí mírně či více liší. | ||
− | Základním SQL příkazem je příklad <code>SELECT</code>. Následující ukázka vypíše z tabulky Kniha všechny knihy (název, autora, cenu a ISBN), jejichž cena je větší než 200 Kč, a seřadí je podle názvu: | + | Základním SQL příkazem je příklad <code>SELECT</code>. Následující ukázka vypíše z tabulky <code>Kniha</code> všechny knihy (název, autora, cenu a ISBN), jejichž cena je větší než 200 Kč, a seřadí je podle názvu: |
<pre> | <pre> |
Aktuální verze z 20. 2. 2012, 12:01
Autor: Petr Fiala
Klíčová slova: SQL, databáze, dotazovací jazyky
Synonyma: Sequel
Související pojmy:
nadřazené - SŘBD, DBMS
podřazené - ---
Charakteristika
SQL (Structured Query Language) je dotazovací programovací jazyk používaný ke zpracování dat v relačních databázích. Uplatňuje se často v architektuře klient/server. SQL příkazy lze použít pro přímou práci s databází nebo mohou být použity jiným programovacím jazykem a vytvořit tak databázové rozhraní. Všechny hlavní systémy pro správu databází tento jazyk podporují. SQL je mezinárodně standardizovaný (standard ANSI i ISO), ale jednotlivé implementace se od sebe mohou lišit.
Historie
První prototypová implementace tohoto jazyka, který se až do konce 70. let nazýval Sequel, vznikla roku 1974 v laboratořích společnosti IBM (autoři Donald D. Chamberlin a Raymond F. Boyce) a byla použita ve firemním systému s názvem R. Jazyk se postupně vyvíjel a bylo třeba jej standardizovat. K tomu došlo v roce 1986, kdy jej přijala standardizační skupina ANSI (a v roce 1987 ISO). Standardem byl uznán dialekt firmy IBM. V literatuře se můžeme setkat také s označením SQL86. Později bylo třeba rozšíření definičního jazyka pro možnost integritního omezení. Výsledná zpráva byla zveřejněna v roce 1989 organizací ISO (označení SQL89). Následovalo postupně několik dalších standardů (vše ISO):
Rok | Standard | Poznámky |
1999 | SQL:1999 (SQL3) | Přidány regulární výrazy, rekurzivní dotazy, triggery atd. |
2003 | SQL:2003 | Představeny XML funkce, funkce window, standardizované sekvence a automaticky generované hodnoty. |
2006 | SQL:2006 | Definuje další spojitosti s XML formátem. Umožňuje v kódu používat jazyk XQuery (XML dotazovací jazyk vyvinutý W3C). |
Aktuální verzí je SQL:2008, která přidává trigger INSTEAD OF, příkaz TRUNCATED a povoluje použití ORDER BY mimo definici.
Nejznámější implementace
Implementace | Aktuální verze | Dokumentace |
MySQL | 5.1.47 | http://dev.mysql.com/doc/refman/5.1/en/index.html |
PostgreSQL | 8.4.4 | http://www.postgresql.org/docs/8.4/static/index.html |
MS SQL Server | 2008 R2 | http://technet.microsoft.com/en-us/library/bb418433%28SQL.10%29.aspx |
Oracle Database | 11g release 2 | http://www.oracle.com/pls/db112/homepage |
Informix | 11.50 | http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp |
Ukázka použití
Syntaxe SQL není nijak složitá, je zvolena tak, aby připomínala anglický jazyk.
Klíčovým pojmem v jazyku SQL je příkaz. Každý příkaz začíná klíčovým slovem. Slovo vyjadřuje orientačně, jakou činnost daný příkaz provádí. Za klíčovým slovem následuje jedna nebo více volitelných klauzulí, které blíže specifikují povahu vykonávané činnosti, nebo určují data, s nimiž má příkaz pracovat.
Každá klauzule začíná klíčovým slovem, jako jsou např. SELECT
nebo CREATE
. Některé klauzule jsou povinné, jiné volitelné. Každá implementace SQL používá kromě standardních klauzulí, daných konvencemi ANSI/ISO, své vlastní klauzule, někdy se i činnost standardních klauzulí mírně či více liší.
Základním SQL příkazem je příklad SELECT
. Následující ukázka vypíše z tabulky Kniha
všechny knihy (název, autora, cenu a ISBN), jejichž cena je větší než 200 Kč, a seřadí je podle názvu:
SELECT titul, autor, cena, isbn FROM Kniha WHERE cena > 200 ORDER BY titul;
Odkazy
Použitá literatura
- SKLENÁK, Vilém. Data, informace, znalosti a Internet. Vyd. 1. Praha : C.H. Beck, 201. 507 s. ISBN 80-7179-409-0.
- Techweb [online]. 2010 [cit. 2010-05-25]. SQL Definition. Dostupné z WWW: <http://www.techweb.com/encyclopedia?term=sql>.
- KOCAN, Marek. Živě [online]. 26. 10. 1998 [cit. 2010-05-25]. Víte, co je SQL? Ne? Nevadí - dnes začínáme!. Dostupné z WWW: <http://www.zive.cz/clanky/vite-co-je-sql-ne-nevadi---dnes-zaciname/sc-3-a-4320/default.aspx>.
- RYDVAL, S. NaWEBka [online]. 06. 08. 2005 [cit. 2010-05-25]. Historie jazyka SQL. Dostupné z WWW: <http://www.rydval.cz/phprs/view.php?cisloclanku=2005123125>.
- SQL. In Wikipedia : the free encyclopedia [online]. St. Petersburg (Florida) : Wikipedia Foundation, 26 October 2003, last modified on 20 May 2010 [cit. 2010-05-25]. Dostupné z WWW: <">http://en.wikipedia.org/wiki/SQL>.
- ARVIN, Troels. Troels Arvin's home page [online]. 2010-04-06 [cit. 2010-05-25]. Comparison of different SQL implementations. Dostupné z WWW: <">http://troels.arvin.dk/db/rdbms/>.
- OLSZOWSKI, P.; FARANA, R. Dotazovací jazyk SQL [online]. Ostrava : VŠB - Technická univerzita Ostrava, 1997 [cit. 2010-05-25]. Dostupné z WWW: <http://www.fs.vsb.cz/books/SQLReference/>.
- JANDA, J. Jemný úvod do SQL [online]. [s.l.] : [s.n.], 1997 [cit. 2010-05-25]. Dostupné z WWW: <http://www.wlist.cz/subsql/SQL.pdf>.