Unix a Internet 9. SQL server Obsah: SQL jazyk, relační databáze, klíč model klient-server, SQL příkazy MySQL, PostgreSQL, Firebird správa z příkazového řádku a webové stránky výkon, četnost zápisu, SSD © Milan Keršláger http://www.pslib.cz/ke/slajdy 30. 11. 2014 http://creativecommons.org/licenses/by-nc-sa/4.0/
Historie IBM 70. léta 20. století výzkum relačních databází vznik jazyka SEQUEL Structured English Query Language jazyk umožňující pracovat s relačními databázemi snaha o přiblížení k mluvenému jazyku (angličtina) v roce 1979 se přidala k vývoji dnešní firma Oracle 1981: IBM → systém SQL/DS 1982: IBM → systém DB/2 dále Progres, Informix a SyBase (dnes MS-SQL) přejmenování SEQUEL na SQL
SQL Structured Query Language ANSI chtěla standardizovat nový jazyk RDL SQL se však stalo de-fakto standardem proto ANSI založilo standard na SQL SQL-86 (z roku 1986) SQL-92 (z roky 1992), někdy též SQL-2 rozšíření o zajištění integrity databází SQL-99 (z roku 1999) databáze s objektovými prvky firmy neimplementují SQL standard zcela naopak často vlastní rozšíření → omezená portabilita
Relační databáze definoval v roce 1970 Edgar F. Codd databáze jsou tabulky řádky (→ záznamy) sloupce (→ atributy) v políčkách pak konkrétní hodnoty některé hodnoty jsou speciální → klíč klíč odkazuje na stejný klíč v jiné tabulce tím vzniká relace → tj. propojení tabulek pak je však nutné zajistit integritu
Klíč primární klíč cizí klíč kandidátní klíč (alternativní klíč)
Integrita integrita ve smyslu relační databáze
Vztahy mezi tabulkami stupeň vztahu kardinalita vztahu účast relace ve vztahu volitelná povinná
Stupeň vztahu unární vztah binární vztah ternární vztah N-ární vztah
Kardinalita vztahu
Normalizace databáze
SQL server obhospodařuje data, rozumí SQL jazyku využívá model klient-server klient zasílá dotazy a získává odpovědi nenáročný na systémové prostředky (výkon) sám databázi neovládá, nespravuje klient komunikuje se serverem poskytuje vstupy, klade dotazy, získává odpovědi (data) data jsou umístěna na serveru snadná správa, snadné zálohování serializace zpracování, snadné zajištění atomicity umožňuje zamykání dat, transakce, řeší integritu