Databázové systémy I přednášky

Rozměr: px
Začít zobrazení ze stránky:

Download "Databázové systémy I přednášky"

Transkript

1 Vostrovský Václav PEF - přízemí č. 15 Po 12:00-13:30-75% docházky na cvičeních - musíme chodit připraveni - 2 testy v průběhu cvičení (teorie a SQL) - max 10 bodů, minimum 5 bodů, pro zápočet z obou minimálně 10 bodů - 1 oprava (např. pokud 2. test: 3 body a oprava 7 bodů - celkem z 2. testu: (3 + 7)/2 = 5 bodů) - skripta: Vytváření databází v Oracle - zkouška: písemná část + ústní dozkoušení (SQL dotazy a základní teoretické termíny) - dvě v lednu jsou předtermín 1. cvičení: seznámení s náležitostmi udílení zápočtu MS ACCESS: založení a naplnění tabulky, třídění, dotazy 2. cvičení: MS ACCESS: složitější dotazy, obrazovka, sestava 3. cvičení: ORACLE - SQL * PLUS založení a naplnění tabulky INDEX, DELETE, DROP TABLE, UPDATE 4. cvičení: ORACLE - SQL*PLUS třídění, dotazy (selekce, projekce, agregované údaje), práce s více tabulkami 5. cvičení: ORACLE - SQL*PLUS složitější dotazy (výběry cvičení: test 14. cvičení: oprava testu Přednášená témata: - základní pojmy db technologie - relační datový model - dotazovací jazyk SQL - modelování reálného světa (ER) - datová normalizace - SŘBD Oracle - ochrana dat Aspekty pro vymezení přístupů ke zpracování dat: - stupeň nezávislosti programů od způsobu jejich uložení - míra vzájemné integrovanosti organizace dat Členění dosavadních přístupů ke zpracování dat: - konvenční přístupy: - agendové zpracování dat - integrované zpracování dat - databázové přístupy: - relačně databázové zpracování dat - objektové zpracování dat Agendové zpracování - představuje první pokus řešit problematiku zpracování hromadných dat: - vedení samostatných, vzájemně oddělených a rozsahem malých úloh - agend - každá agenda má vlastní soubory, které nejsou propojeny - míra integrovanosti velmi nízká Redundance dat: narůstající objem dat vícenásobné zpracování dat Nevýhody agendového zpracování: - obtížná uživatelská flexibilita - pro každou novou uživatelskou funkci je třeba přepsat dotyčný program nebo nový napsat - každý program obsahuje přesný popis souborů - problém konzistence redundantních dat - pokud se změní vlastnost objektu, musí být přepsána ve všech výskytech - obtížná flexibilita datové základy - pro každou změnu struktur záznamu nutno přeprogramovat související programy - obtížná kontrolovatelná datová redundance - omezené možnosti sdílení stejných dat více aplikacemi Christy

2 - nízká bezpečnost IS - obtížná dosažitelnost evidovaných dat - ke zpracovávaným souborům musí existovat odpovídající aplikační programy - obtížná ochrana dat proti zneužití - komplikované zajištění integrity dat - zpracovávaná data musí odpovídat vlastnostem popisovaných objektů reálného světa - Nutnost uplatnění jiné filozofie ve zpracování dat Požadavky kladené na zpracování hromadných dat - zpracování ekonomických agend se týká úloh: - výběry pomocí určitého algoritmu, jehož základem je dotaz uživatele - aktualizace evidovaných dat - záznamy ze vstupního souboru jsou modifikovány záznamy ze změnového souboru Princip aktualizace ekonomických agend kmenový soubor + pohybový soubor -> aktualizace -> nový kmenový soubor Princip databázového zpracování aplikační program 1, 2, 3, 4 -> datový zdroj Předpoklady databázových dotazovacích jazyků - musí obsahovat příkazy pro definici nových dat - jazyk pro definici dat DDL (data definicion language) - musí obsahovat příkazy pro vkládání nových vět, tvorbu dotazů a aktualizaci dat - jazyk pro manipulaci dat DML (data manipulation language) - musí obsahovat příkazy pro řízení přístupových práv uživatelů a pro řízení transakcí - jazyk DCL (data control language) Moderní SŘBD disponují prostředky vizuálního programování - příkazy jsou konstruovány (generovány) na základě zvolených grafických symbolů v uživatelském rozhraní Členění dotazovacích jazyků: - procedurální jazyky - nutno zadat algoritmus pro získání požadované odpovědi - COBOL, FORTRAN - neprocedurální jazyky - v principu jednodušší, pouze se specifikují podmínky pro požadovanou odpověď 1. jazyk SQL (Struktured Query Language) kopíruje princip kladení otázek v přirozeném jazyce 2. jazyk QBE (Query By Example) pro zadávání dotazů pomocí grafických symbolů zapisovaných do návrhových formulářů Relačně úplný dotazovací jazyk: = umožňuje definovat všechny operace relační algebry Databázové dotazovací jazyky: Dotazovací jazyk SQL léta laboratoře IBM - deklarativní dotazovací jazyk založený na n-ticovém relačním kalkulu - deklarativní - příkazy definují co se má provést a nikoliv jak se to má provést - dotazovací - jazyk specializovaný pro manipulaci s daty v databázi pomocí rozhraní SŘBD (nelze ale např. programovat uživatelské rozhraní - nutno kombinovat s jiným vyšším programovacím jazykem) Zlomem ve vývoji SQL se stala jeho standardizace organizací ANSI Syntaxe příkazů SQL Symbol Význam [ ] nepovinné části říkazu { } povinná volba jedné z uvedených možností oddělení variant, mezi kterými je možné volit < > parametr, za který je třeba dosadit konkrétní hodnotu... konstrukce uvedená v předchozí závorce se může opakovat označení konstant typu řetězec znaků ( Josef ) Christy

3 uživatelské jméno: student1 až 9 heslo: student přihl. řetězec: ORA9 quit - odhlášení Relační datový model - vznik: 1969, E. F. Codd, laboratoře IBM, DB2 - aspekty relačního datového modelu: - hodnoty v tabulkách musí být atomické - neměla by být dále dělitelná - hodnoty musí být skalární (pouze jeden rozměr) - hodnoty ve sloupcích jsou prvky dotyčných domén - datový typ vymezuje jaká data budou vkládána - práce s tabulkami využívá operací výrokové logiky - výběry, projekce, spojování tabulek - primární klíče pro identifikaci řádek mezi sebou - pro propojování tabulek navzájem - cizí klíče Zavádění IS do organizace - instituce - v cizině je správce databáze v managementu, je více respektován - u nás - není respektován, musí se obhajovat, vysvětlovat Křivka humbuku - zájem, popularita, očekávání od nových aplikací - ze začátku byl obrovský, pak zjistili, že pokud se dostatečně nepřizpůsobili, tak se to nevyplatilo Relační datový model - v tabulkách lze definovat podmnožiny řádek (operace selekce) a podmnožiny sloupců (projekce) - pro práci s více tabulkami - operace spojení Základní pojmy relační databázové teorie: - datové soubory chápány jako množiny - dvourozměrné tabulky = RELACE - jednotlivé řádky = n-tice sledované problematiky - jména sloupců = atributy (vlastnosti) - obor přípustných hodnot v sloupcích - doména - každá věta (record) = souhrn všech údajů o jednom objektu dané problémové domény - sloupce tabulky reprezentují jednotlivé vlastnosti (atributy) objektů - všechny záznamy v rámci 1 tabulky - stejná struktura - záznam - množina položek (pole - fields) = množina vlastnosti sledovaných objektů doprava - zvířata - zaměstnanci - zásoby - ZP - účetnictví - mzdy => vše sdílené databázemi DBS Podmínky relačnosti tabulky - všechny hodnoty v tabulce musí být elementární (nedělitelné) - pozice sloupců je nevýznamná (pořadí lze měnit) - data se neztrácí - pozice řádků je nevýznamná (pořadí lze měnit) - sloupce musí být homogenní (obor hodnot tohoto sloupce musí být stejný) - každý sloupce musí být jednoznačně pojmenován - každý sloupec musí být jednoznačně rozlišen (primární, sekundární klíč) Relační algebra - operace PROJEKCE - výběr požadovaných sloupců, výsledkem je relace o p-sloupcích vzniká z původní o n- sloupcích), p < n - operace SELEKCE - výběr požadovaných řádků, výsledkem je relace o r-řádcích vzniklá z původní o m-řádcích, r < m - operace spojení JOIN (na rovnost, nerovnost, vnější) - spojením dvou relací vzniká třetí, která obsahuje všechny kombinace vyhovující zadané podmínce Coddova pravidla pro relační model 1. pravidlo SŘDB - data spravována pouze pomocí relačních operací Christy

4 2. pravidlo informační - data reprezentována na logické úrovni jako hodnoty relačních tabulkách 3. pravidlo přístupu - každý údaj logicky dosažitelný pomocí kombinace názvu tabulky, sloupce a hodnoty primárního klíče 4. pravidlo zpracovatelnosti neznámých hodnot - ke každé neznámé hodnotě lze dojít prostřednictvím jiným známých hodnot 5. pravidlo relačního katalogu - popis celé databáze je na logické úrovni reprezentována jako relační systémový katalog 6. pravidlo pro jazyk - pro komunikaci se SŘDB - definici dat (DDL) - integritní omezení (DCL) - manipulaci s daty (DML) 7. pravidlo pohledů - SŘDB musí umožňovat konstrukci pohledů 8. pravidlo operací - všechny relační operace pracují s tabulkami jako s celky 9. pravidlo fyzické a logické nezávislosti dat 10. pravidlo nezávislosti dat na integritních omezeních - výsledky operací musí být nezávislé na změnách IO Dotazovací jazyk SQL - příkazy pro definici dat - definice tabulky v SQL - CREATE TABLE <jméno-tabulky> - ALTER TABLE - DROP TABLE - help STARTUP - nápověda Vytvoření relace STUDENT student(cind, jmeno, bydliste, datnar, stip) CREATE TABLE student 2 (cind CHAR(6) NOT NULL, 3 jmeno VARCHAR(12), 4 bydliste VARCHAR(10), 5 datnar DATE, 6 stip NUMBER(4)); Tabulka vytvořena INSERT INTO student 2 VALUES ( 111/99, Karel Novák, Praha!, ,3500); 1 řádka vytvořena výpis obsahu relace STUDENT STUDENT - pouze studenty 3 ročníku -> STUDENT3 INSERT INTO student3 2 SELECT * FROM student 3 WHERE rocnik= 3 ; 2 řádek vytvořeno SELECT * FROM student3 Doplnění položky ROCNIK do relace STUDENT ALTER TABLE student ADD rocnik CHAR(1); Tabulka změněna Christy

5 Výpis struktury tabulky DESCRIBE student; Modifikování položky BYDLIŠTĚ v relaci STUDENT ALTER TABLE student MODIFY bydliste VARCHAR2(15); Tabulka změněna DESCRIBE student; Oprava dat v položce STIPENDIUM v relaci STUDENT UPDATE student SET stip= WHERE cind= 222/01 ; 1 řádka aktualizována Oprava dat v položce STIPENDIUM v relaci STUDENT UPDATE student SET stip=stip*2 2 WHERE ROCNIK>= # ; 2 řádek aktualizováno Přejmenování relace STUDENT na STUDENTI RENAME student TO studenti; Tabulka prejmenována SELECT * FROM studenti; Zrušení relace STUDENT - budou zrušeny i případné indexové soubory k dané relaci a budou nepoužitelné všechny pohledy a uložené dotazy týkající se této tabulky!!! DROP TABLE student; Tabulka zrušena Přejmenování sloupce STIP na STIPENDIUM ALTER TABLE student ADD stipendium NUMBER(4); Tabulka změněna DESC student; - nyní je třeba zkopírovat hodnoty z původního sloupce do nového sloupce za všechny řádky UPDATE student SET stipendium=stip; 4 řádek aktualizováno - jako poslední krok je nutno zrušit původní sloupec, tj. STIP ALTER TABLE student DROP COLUMN stip; Tabulka změněna Zrušení záznamu v relaci STUDENT DELETE FROM student WHERE cind= 444/02 ; 1 řádka vymazána Christy

6 Výhody požívání jazyk SQL - snížení ceny na zaškolení pracovníků - tvůrci a uživatelé aplikací mohou snadněji přecházet od jednoho databázového prostředku k jinému - přenositelnost vytvořené aplikace - aplikace vytvořená v konkrétním databázovém prostředku může být provozovaná v jiném prostředku beze změny, což umožňuje odladit danou aplikaci na PC a výsledek pak přenést na vyšší kategorii počítačů - délka života aplikace se zvyšuje - v případě nutnosti je možno přejít na jiný databázový prostředek a prodloužit tak životnost dané aplikace - společný přístup k datům v heterogenním prostředí - distribuované databáze provozované pod různým SŘDB Příkazy jazyka pro manipulaci dat DML - SELECT - základem dotazovacího jazyk SQL je příkaz SELECT Význam jednotlivých klauzulí příkazu SELECT GROUP BY - obsahuje definice výrazů, podle kterých budou řádky seskupeny HAVING - omezuje souhrnné řádky definované pomocí GROUP BY, která splňují zadanou podmínku ORDER BY - umožňuje setřídění řádků ve výsledku dle zadaných kritérií - klíčové slovo DISTINCT odstraňuje duplicitní řádky výběru PROJEKCE - výběr sloupců SELECT jmeno, bydliste FROM student; Modifikovaný text v záhlaví vybraných sloupců SELECT jmeno AS Jméno studenta FROM student; - problém činí délka vybíraného sloupce, která současně vymezuje délku nového (výstižnějšího) ALIAS pojmenování Výpis modifikovaných (agregovaných) údajů SELECT jmeno, bydliste, stipendium*1.2 2 AS Stipendium v SK FROM student; SELEKCE - výběr řádků (specifikováním podmínky) SELECT * FROM student 2 WHERE stipendium>2000; SELEKCE - odstranění duplicitních řádků SELECT bydliste FROM student; SELECT DISTINCT bydliste FROM student; SELEKCE - predikáty ve výběrové podmínce SELECT * FROM student WHERE stipendium 2 BETWEEN 5000 AND 7000; Výběry na podkladě testu náležitosti do množiny hodnot SELEKCT jmeno, bydliste FROM student 2 WHERE bydliste IN 3 ( Praha 1, Praha 3, Praha 9 ); Výběry na podkladě částečné specifikace textu % (procento) - specifikuje žádný, jeden nebo několik libovolných znaků (obdoba hvězdičky v MS-DOS) _ (podtržítko) - vyjdřuje právě jeden libovolný znak (obdoba otazníku v MS-DOS) SELECT jmeno FROM student 2 WHERE jmeno LIKE K% ; Výběry na podkladě částečné specifikace textu SELECT jmeno FROM student 2 WHERE jmeno LIKE %N% OR jmeno LIKE %D% ; Výběr s relačním operáteorem pro nerovnost (!=) SELECT * FROM student WHERE ročnik!= 3 ; Christy

7 Výběry na podkladě hodnoty datumu SELECT * FROM student WHERE (sysdate-datnar)>7300; - každé smysluplné datum si přepočítává na pořadová čísla od začátku n. l. Třídění výstupů SELECT * FROM student ORDER BY bydliste ASC,rocnik DESC; Práce s více tabulkami - v tomto případě jde o operaci relační algebry - spojení (tj. spojení těch záznamů, které spolu korespontují ) - pokud vybíráme stejnojmenné sloupce z těchto tabulek, je nutno použít úplnou identifikaci položek v tzv. tečkové notaci, tj. <jméno-tabulky>.<jméno-sloupce>. SELECT * FROM prospech; cind datumzk cpred znamka student spojení prospech jmeno, cpred, datumzk, znamka SELECT jmeno AS Jméno studenta, 2 datumzk AS Datum zkoušky, 3 cpred AD Číslo předmětu, 4 znamka 5 FROM student, prospech 6 WHERE student.cind=prospech.cind; STUDENT: cind jmeno bydliste datnar 111/99 Karel Novák Praha /01 Jiří Dvořák Praha /01 Karel Franěk Kolín /02 Josef Havlát Praha 1 PROSPECH: cind datumzk cpred znam 111/99 222/01 444/02 výsledek: jméno suden datum zk číslo předm znamka Karel Novák Jiří Dvořák Josef Havlát Postup zpracování jednoduchého dotazu SELECT - relační databázový stroj ORACLE vyhodnocuje dotaz SELECT v následujícím pořadí: 1. zpracuje klauzuli FROM, tj. výběr požadované zdrojové tabulky či tabulek; 2. zpracuje klauzuli WHERE, tj. jsou procházeny jednotivé řádky (záznamy) jeden za druhým a vybírány pouze ty, které splňují výběrovou podmínku 3. realizuje klauzuli SELECT, tj. výběr požadovaných sloupců z tabulky, je-li uvedena klauzule DISTINCT, budou odstraněny duplicitní řádky 4. byl-li spoecifikován požadavek setřídění výběru, bude vykonána klauzule ORDER BY Práce s více tabulkami SELECT * FROM prospech; SELECT * FROM predmety; SELECT jmeno,datumzk,prospech.cpred,nazev,znamka 2 FROM student,prospech,predmety 3 WHERE student.cind=prospech.cind AND prospech.cpred=predmety.cpred; Christy

8 SELECT jmeno,datumzk,prospech,cpred,nazev,katedra,znamka 2 FROM student,prospech,predmety 3 WHERE student.cind=prospech.cind 4 AND prospech.cpred=premety.cpred 5 AND katedra= KII ; Práce se skupinami příkazů - přehled nejpoužívanějších funkcí: COUNT(*) - počet řádků ve skupině COUNT(<jmeno-sloupce>) - počet hodnot ve sloupci - počítají se pouze platné hodnoty (nikoliv NULL) SUM(<jméno-sloupce>) - součet hodnot v specifikovaném numerickém poli MIN(<jméno-sloupce>) - nejmenší hodnota pole ve sloupci MAX(<jméno-sloupce>) - největší hodnota ve sloupci AVG(<jméno-sloupce>) - průměr. hodnota polí v čísel. sloupci Zjištění četnosti v rámci stanoveného kritéria SELECT COUNT(*) AS Počet studentů z Prahy 1 2 FROM student 3 WHERE bydliste= Praha 1 ; SELECT * FROM prospech; SELECT COUNT(DISTINCT cind) FROM prospech; SELECT rocnik,count(*) FROM student 2 GROUP BY rocnik; Zjištění maximálních hodnot SELECT MAX(stip) FROM student; Zjištění prům. stipendií za jednotlivé ročníky SELECT rocnik, AVG(stip) FROM student GROUP BY rocnik; SELECT rocnik, AVG(stip) FROM STUDENT WHERE stip>0 GROUP BY rocnik; Zjištění jména studenta s maximálním stipendiem CHYBNĚ: SELECT jmeno, max(stip) FROM student; SELECT jmeno,stip FROM student 2 WHERE stip=(select max(stip) FROM student); PROČ? zjištění jména pro stip=max(stip) max(stip) Zjištění jména studenta, který je nejstarší SELECT jmeno,datnar FROM student 2 WHERE datnar=(select min(datnar) FROM student); Pohledy (view) - k definování externí úrovně popisu dat slouží v jazyce SQL tzv. pohledy (view) - pohled je tabulka, která není fyzicky uložená v databáz, ale vzniká vždy při použití daného pohledu jako výsledek určitého příkazu SELECT - pohledy se používají pro zpřístupnění jen určité - podle toho, z kolika tabulek pohledy vznikají, lze je rozdělit na: - jednoduché pohledy - jsou vytvořeny z údajů jedné tabulky a neobsahují žádné funkce či skupiny dat - komplextní pohledy - jsou vytvořeny z údajů více tabulek a mohou obsahovat funkce a skupiny dat definice pohledu: Christy

9 CREATE VIEW <jméno pohledu> [<seznam nových jmen sloupců>] AS <příkaz-select> zrušení pohledu: DROP VIEW <jméno_pohledu> Vytvoření pohledu STIPENDISTE CREATE VIEW stipendiste 2 (Cindex,Jmeno_stud,Vyse_stipendia) AS 3 SELECT cind,jmeno,stip 4 FROM student 5 WHERE stip>0; SELECT * FROM stipendiste; UPDATE student SET stip=stip/2 2 WHERE cind= 111/99 ; SELECT * FROM stipendiste; Zrušení pohledu STIPENDISTE DROP VIEW stipendiste: Databázové systémy I Používání SQL přináší tyto výhody: - snížení ceny na zaškolení pracovníků - vůrci a uživatelé aplikací mohou snadněji přecházet od jednoho databázového prostředku k jinému - přenositelnost vytvořené aplikace - aplikace vytvořená v konkrétním databázovém prostředku může být provozovaná v jiném prostředku beze změny, což umožňuje odladit danou aplikaci na PC a výsledek pak přenést na vyšší kategorii počítačů - délka života aplikace se zvyšuje - v případě nutnosti je možno přejít na jiný databázový prostředek a prodloužit tak životnost dané aplikace - společný přístup k datům v heterogenním prostředí - distribuované databáze provozované pod různým SŘDB Zjištění integrity dat - relační databázový stroj musí obsahovat mechanismy k zabezpečení báze dat pře případným úmyslným i neúmyslným poškozením a před zneužitím dat - takováto ochrana báze dat je realizována jako zajištění integrity báze dat. Při realizaci databázového systému je nutno zachytit všechna pravidla, pomocí kterých databázový stroj zajistí správnost a věrohodnost uložených dat = tzv. datovou integritu - tato pravidla vymezující nezbytnou korektnost uložených dat a rozhodující o proveditelnosti aktualizačních operací = tzv. integritní omezení (integrity constraints) Zajištění integrity dat - v klasických databázových systémech byla tato pravidla součástí databázových aplikací. Nevýhodné pro client-server architektury databázových systémů Důvody: - opakované programování integritních algoritmů = sít nadbytečně zatěžující komunikace mezi aplikací a serverem při jejich provádění Závěr: - integrita databáze musí být převážně garantována prostředky databázového server, tj. vlastní realizace pravidel garantujících Druhy integritních omezení Entitní integrita: tj. dodržení jednoznačné identifikace každého řádku dotyčné relační tabulky. Každá relační tabulka proto musí mít určen primární klíč (primary key) jako minimální množinu atributů, jejichž hodnoty společně identifikují každý řádek této tabulky - zabezpečení entitní integrity databáze znamená nepřipustit uložení žádného řádku, ve kterém je hodnota položky představující klíč či některou z jeho komponent nenaplněná nebo vzhledem k řádkům již uloženým duplicitní Realizace entitní integrity CERATE TABLE prednasejici Christy

10 2 (evcped CHAR(3) NOT NULL PRIMARY KEY, 3 jmeno CHAR(12) 4 datnar DATE); Databázové systémy I INSERT INTO prednasejici VALUES( 19e, Karel Novák, ); INSERT INTO prednasejici VALUES( 23E, Josef Malík, ); INSERT INTO prednasejici VALUES( 19E, Martin Kalaš, ); Doménová integrita Doména = množina všech přípustných hodnot určitého daného atributu (sloupce) relační tabulky - omezení doménové integrity je realizováno pravidlem definujícím tyto platné hodnoty, přičemž doména není totéž co datový typ daného atributu. K zachování takovéto doménové integrity databáze je nutné zabezpečit, aby každá hodnota obsažená v databázi byla pouze z množiny hodnot pro daný sloupec přípustných. Přípustnost hodnot atributu může být dokonce dána hodnotami jiného atributu i z jiných tabulek databáze Zajištění doménové integrity CERATE TABLE prednasejici 2 (evcped CHAR(3) NOT NULL PRIMARY KEY, 3 jmeno CHAR(12), 4 datnar DATE, 5 plat number(5) CHECK (plat BETWEEN 7000 AND 50000)); INSERT INTO prednasejici VALUES( 19e, Karel Novák, ,7000); INSERT INTO prednasejici VALUES( 19e, Josef Malík, ,55000); Referenční integrita - referenční integrita databáze garantuje korektnost vztahů mezi logicky souvisejícími tabulkami. Vazby mezi logicky nadřízenými a podřízenými záznamy v databázi jsou vytvářeny doplněním jednoznačné identifikace řádků logicky nadřízené tabulky do logicky podřízené tabulky pomocí tzv. cizího klíče (foreign key) - cizím klíčem v dokumentujícím příkladu je položka CPED v tabulce PREDMETY. Doplnění primárního klíče tabulky přednášejících do tabulky předmětů je realizací vztahu vyjadřujícího, který učitel garantuje jaké předměty Realizace referenční integrity CREATE TABLE predmety 2 (cpred CHAR(5), 3 nazev CHAR(15), 4 katedra CHAR(3), 5 evcped CHAR(3), 6 FOREIGN KEY (evcped) REFERENCES prednasejici(evcped)); INSERT INTO predmety VALUES ( E1210, Expertní systémy Realizace integritních omezení - deklarativní realizace - je explicitně definována ( deklarováno ) jako součást databázového schématu a představuje způsob specifikace IO jako přímé součásti definice struktury databáze, tj. rozšíření příkazu definujícího struturu relační tabulky o klauzule umožňující deklaraci jednotlivých omezení - procedurální realizace - je založena na využití databázových procedur, které jsou realizovány prostřednictvím definic speciálních procedur, tzv. database triggers (spouští), které se vyvolávají ( spouštějí ) při každém vkládání, aktualizaci nebo odstanění záznamu - akce nutné k udržení integrity databáze jsou v tomo 1. zakážu takovýto předmět nabízet 2. kaskádovitě dovedu změny z jedné tabulky do druhé - změny promítnu do podřízených tabulek 3. pomocí null hodnot (číslo garantujícího pedagoga budou samé nuly) Datové modelování Coddova pravidla pro relační model 11. Pravidlo nezávislosti dat na distribuci - výsledek operací nesmí být ovlivněny konkrétním umístěním dat v distribuovaných databázích Christy

11 12. Pravidlo nenarušitelnosti SŘDB - žádný uživatel nesmí obcházet nebo narušovat rozhraní SŘDB Fyzická nezávislost dat - aplikace musí být izolovány od změn fyzické datové struktury, změna aplikace nesmí způsobit nutnou změnu paměového uložení struktur a opačně Logická nezávislost dat - aplikační pohled je izolován od změn ve schématu databáze (změna struktury nevynucuje změnu programu) Třístupnová architektura báze dat 3 úrovně abstrakce při pohledu na evidovaná data: - fyzická úroveň - nejnižší úroveň, popisuje jak jsou data fyzicky uloženy, pracuje s ní programátor SŘDB - konceptuální úroveň - popisuje strukturu dat DB a jejich vzájemné vztahy, tzv. schéma - modeluje reálný svět a vytváří jeho interní model pomocí logické a fyzické struktury dat, pracuje s ní tvůrce DB, správce DB - uživatelská úroveň - popisuje pro konkrétního uživatele pouze tu část DB, na kterou má pravomoc, tzv. subschéma, jejich počet = počet uživatelů Datový model - souhrn pravidel pro reprezentaci logické organizace dat v databázi Datové modelování Vícestupňová architektura DBS: - úroveň: externí schéma - popisuje datové struktury pro koncového uživatele (pohledy) = podmnožina konceptuálního schéma) - úroveň: konceptuální schéma - popisuje jednotlivé datové struktury a jejich vzájemné vazby - model - úroveň: interní schéma - vlstní popis implementace datových sturkur v implementačním prostředí Konceptuální datové modelování (Chenův E-R model): - konceptuální datový model - struktura dat obecně bez ohledu na DBS - logický datový model - konkretizuje model na daný DBS - datový model v definičním jazyku - výsledný pro rutinní zpracování Principy E-E modelování: - orientace na objekty - pracujeme s objekty RIDIC, VOZIDLO nikoliv s identifikacemi - funkcionální podstata vztahů - vztahy mezi objekty jsou definovány jako funkce, např. MA_PRIDELEN - ISA-hierarchie - pro práci s nadtypy a podtypy - hierarchický mechanismus pro konstrukci objektů Úrovně objektů v E-R modelování STUDENT Entitní množina STUDENT atribut Cislo_indexu Jmeno Rocnik Datum_nar ABSOLVOVAL vztahová množina Způsoby konstruování datového modelu - "zdola nahoru" - východiskem je univerzální rleace (U) obsahující všechny atribut řešené problémové domény, následuje specifikování funkčních závislostí mezi jednotlivými atributy. Např. U(Cislo_indexu, Jmeno, Rocnik, Datum_nar, Znamka, Katedra, Cislo_ped, Jmeno_ped, Datum_zkousky, Cislo_predmetu, Nazev_predmetu, Fakulta...) Cislo_indexu -> Jmeno, Rocnik, Datum_nar Cislo_predmetu -> Nazev_predmetu Cislo_indexu, Cislo_predmetu -> Datum_zkousky, Znamka, Cislo_pedagoga Christy

12 Cislo_ped -> Jmeno_ped - tento postup přímo přechází na logickou úroveň -> pouze pro vytváření modelů s max. 25 atributy - "zhora dolu" - nejprve jsou specifikovány struktury entitních množin a následně funkční závislosti mezi nimi Jenotlivé kroky modelování "shora dolů": 1. krok: Specifikace entitních množin - východiskem je verbální popis STUDENT PEDAGOG KATEDRA PŘEDMĚT - specifikovaným objektům (entitním množinám) se přiděli vhodné jméno 2. krok: Specifikace vztahů - důležitá kardinalita vztahu 1:1 1:N M:N Povinnost vztahu: přerušovaná spojnice - nepovinnost vztahu STUDENT ABSOLVUJE PEDAGOG GARANTUJE PŘEDMĚT JE_ČLENEM KATEDRA 3. krok: přiřazení primárních klíčů Cislo_ind STUDENT ABSOLVUJE Cislo_ped Cislo_predmetu PEDAGOG GARANTUJE PŘEDMĚT Cislo_katedry JE_ČLENEM KATEDRA 4. krok: Transformace modelu do logické struktury - konceptuální datový model je rozpracován do logické struktury "předběžných" relací. Tyto relace ovlivněy kardinalitou vztahů: Christy

13 - vztah 1:1 - je-li účast obou entitních množin ve vztahu povinná, postačí pro realizaci pouze jedna relace, jinak NULL hodnoty v primárních klíčích - vztah 1:N - nejčastější, řešení minimálně 2 relacemi - vztah M:N 5. krok: Doplnění zbývajících atributů do předběžných relací Cislo_ind STUDENT Rocnik Jméno_studenta Datum_zkoušky ABSOLVUJE Známka Cislo_ped Jméno_ped Cislo_predmetu Název_predm PEDAGOG GARANTUJE JE_ČLENEM Katedra PŘEDMĚT Cislo_katedry KATEDRA Fakulta Od Do 6. krok: Prověření modelu z hlediska normalizace - strukturální správnost konzistence datového modelu CÍLE DATOVÉ NORMALIZACE: - umožnění reprezentace každé relace v DB - optimalizace algoritmů vyhledávání - zjednodušení aktualizace a rušení vět = postupný reverzibilní proces nahrazování dané množiny relací relacemi, které mají jednodušší strukturu Vlastnosti datové normalizace: - umožňuje ověření správnosti navrženého modelu - slouží k dekompozičnímu návrhu tabulek s minimální redundancí dat - není deterministická (více správných řešení) - lze ji kombinovat s ostatními technikami (dekompozice a syntéza) Způsoby konstruování datového modelu Chybný návrh: Evidence prospěchu Jméno žáka Datum Zkoušení Známka J. Dvořák 10.9,15.10, ,3,3 Chybný návrh: Jméno_žáka Datum_Zk1 Známka1.... Datum_Zk n Známka n J. Dvořák Způsoby konstruování datového modelu - datová normalizace 1 NF 2 NF 3 NF Přínosy datové normalizace: - zabránění vzniku duplicitní dat (redundancí) - šetří kapacitu média - zjednodušuje aktualizaci a vyhledávání dat Dekomponované relace možno opět funkčně zvolit (operace JOIN) Christy

14 1. NF: relace nesmí obsahovat násobná data Prospěch (Cislo_stud, Jmeno, Adresa, Datum_zkousky, Znamka) 0001A Dvořák Kolín A Kalaš Čáslav A Dvořák Kolín A Kalaš Čáslav A Dvořák Kolín Po normalizaci: STUDENTI Cislo_stud Jmeno Adresa ZNÁMKY Cislo_stud Datum_zkousky Známka 2. NF: Všechna neklíčová data relace musí funkčně záviset na celém primárním klíči Cislo_stud Cpredm Datum_zkousky Znamka Název_predm Pedagog Po normalizaci: ZKOUSKY Cislo_stud C_predm Datum_zkousky Znamka Pedagog PREDMETY C_predm Nazev_predm Funkční závislost: Datový prvek B záznamu je funkčně závislý -> ke každé hodnotě A náleží nejvýše jedna hodnota B - > A identifikuje B Spojení tabulky sama se sebeou SELECT a.jmeno, b.jmeno 2 FROM student a, student b 3 WHERE a.jmeno < b.jmeno Vnější spojení tabulek - vnější spojování tabulek se používá i pro výpis, záznamů, které nestpňují spojovací kriterium, symbolem operátora je v tomto případě (+) - operátor se umístí na tu stranu příslušné tabulky, kde mohou potencionálně chybět informace SELECT student.cind, jmeno, dat.stzkousky, znamka 2 FROM student, statnice 3 WHERE student.cind = statnice.cind (+); SELECT student.cind, jmeno FROM student 2 WHERE student.cind NOT IN 3 (SELECT statnice.cind FROM statnice); Způsoby konstruování datového modelu - datová normalizace 3. NF - všechna neklíčová data musí záviset pouze na klíčových donotách a nikoliv mezi sebou Příklad: Cislo_pedagoga Jméno_pedagoga Datnar Cislo_kvalifikace Nazve_kvalifikace Pedagog Cislo_pedagoga Jméno_pedagoga Datnar Kvalifikace Cislo_kvalifikace Nazev_kvalifikace Christy

15 7. krok: přiřazení domén jednotlivým atributům - v rámci tohoto kroku je třeba stanovit charakteristiky jednotlivých atributů - tj. domén: - datový typ - délka - rozsah - přípustné hodnoty - formát (maska) - jedinečnost (primární klíč) - přípustnost "NULL" hodnoty Datový typ: CHAR a VARCHAR2 - datové typy CHAR a VARCHAR2 - znakové - mohou obsahovat data skládající se z písmen, číslic a jiných znaků CHAR (délka) - pro uložení řeězce o pevné délce, paramter délka je povinný <1;2000> VARCHAR2 (délka) - pro uložení řetězce proměnné délky, paramter délka je povinný <1;4000> Příklad: Město = Kolín MĚSTO CHAR(10) K o l í n MĚSTO VARCHAR2(10) K o l í n 8. krok: stanovení pravidel pro rušení, vkládání a modifikování dat - jde o upřesnění vazeb mezi jednotlivými atributy navrženého modelu (především podmínky) 9. krok: analýza budoucího vývoje modelu - domény - posouzení předpokládaných změn domén, primárních klíčů kardinality vztahu, integritních omezení atd. závěr: nutno koordinovat týmovou práci, vyloučit intuitivní postupy - důsledné dodržení postupu tvorby logického modelu minimalizuje výskyt nenormalizovaných relací a s tím spojených problémů 5. krok: Doplnění zbývajících atributů do předběžných relací Cislo_ind STUDENT Rocnik Jméno_studenta Datum_zkoušky Známka Cislo-ind ABSOLVUJE Cislo_ped Jméno_ped Cislo_predmetu Název_predm PEDAGOG GARANTUJE JE_ČLENEM Katedra PŘEDMĚT Cislo_katedry KATEDRA Fakulta Od Do FAKULTA Christy

16 Cislo_ind STUDENT Rocnik Jméno_studenta Datum_zkoušky ABSOLVUJE Známka Cislo_ped Jméno_ped Cislo_predmetu Název_predm PEDAGOG GARANTUJE JE_ČLENEM Katedra PŘEDMĚT Cislo_katedry KATEDRA Fakulta Od Do - přidám Cislo_ped k PŘEDMĚT Stuktury výsledných tabulek: PEDAGOG (Cislo-ped, Jméno_ped) Koncepce SŘDB Oracle - databázová technologie představuje unifikovaný soubor pojmů, prostředků a technik pro vytváření informačních systémů - hlavní nástroj SŘDB Oracle je relační db stroj - zajišťuje správu všech dat uložených v databázi - relační db stroj pracuje na počítači řízeném hostitelským OS, v rámci počítačové sítě se označuje jako hostitelský uzel Struktura databáze: - soubory s kódem programu - hostitelské db soubory - protokolační soubory - pro obnovení databáze po havárii - řídící soubory - malé binární soubory spjaté s danou databází s důležitými informacemi (např. informace o mezivýsledcích sejmutých v tzv. bodech návratu) Vnitřní členění databáze: - logickou strukturu databáze popisuje systémový katalog, tvz. slovník dat Databáze se člení na: - datový segment - segment pro dočasné objekty - indexový segment - rollback segment - pro každou probíhající transakci se v pracovní oblasti těchto segmentů vede deník transakcí Segmenty se člení na oblasti skládající se z datových bloků s následující strukturou: - záhlaví a adresář záznamů nacházející se v daném bloku - volný prostor a prostor obsazený záznamy Pohledy do slovníku dat: - běžnému uživateli nejsou k dispozici tabulky se systémovými informacemi, ale pouze pohledy na ně. K tomu lze použít standardní příkazy: Např: Výpis struktury všech objektů, které vlastní uživatel DESC USER OBJECTS Např: Výpis struktury všech objektů všech uživatelů: DESC ALL OBJECTS Christy

17 Např. Výpis struktury tabulky STUDENT: DESC ALL OBJECTS Datové typy ORACLE: - CHAR(n) - VARCHAR(a) - NUMBER(p,s) - DATE - (DD-MON-YY např. 10-JAN-03) - LONG - řetězec znaků proměnné délky 1-2 GB - RAW(ln) - binární data o proměnné délce týkající konkrétního záznamu tabulky - LONGRAW - shodný význam jako prodchozí, délka až 2 GB - ROWID - binární údaj (pseudosloupec je součástí tabulky) obsahuje informace o daném DB souboru, o bloku v rámci tohoto souboru a o záznamu v rámci tohoto SQL*PLUS: - prostředek pro interaktivní nebo dávkovou komunikaci koncového uživatele s db strojem ORACLE Příkaz lze zadávat: - v základním režimu - ukončovat středníkem, je ukládán do vyrovnávací paměti - tzv. příkazový buffer - řídící příkaz - pro řízení SQL*PLUS a formátování odpovědí na dotazy nejčastější: INPUT - převádí dialog do režimu vkládání skupiny řádků do bufferu - bloky PL/SQL - celý blok se ukládá do příkazového bufferu a režim vkládání se ukončuje tečkou nebo prázdným řádkem Řízení dialogu uživatele s SQL*PLUS: SET PAGESIZE 24 SET PAUSE ON - odezvy budou členěny po obrazovkách s 24 stránkami a zobrazování bude zastavovat po obrazovkách a čekat na stisk libovolné klávesy CLEAR BUFFER INPUT 1 SELECT * FROM prednasejic;i 2 RUN 1 SELECT * FROM prednasejic; SQL*PLUS: měření doby provádění příkazu TIMING START SELECT * FROM prednasejici; TIMING STOP SQL*PLUS: editace obsahu příkazového řádku LIST - vypíše obsah bufferu, přičemž aktuální řádek je předznačen hvězdičkou LIST CLEAR BUFFER - vymaže veškerý obsah příkazového bufferu CLEAR BUFFER LIST DEL - vymaže aktuální řádek LIST DEL LIST RUN CHANGE /starý/nový - v aktuálním řádku bude nalezen první výskyt "starého" zankového řetězce a nahrazen "novým" znakovým řetezcem LIST CHANGE /Praha 1/Praha 9 RUN Christy

18 INPUT textový řetězec - vloží za aktuální řádek nový řádek LIST INPUT WHERE rocnik='3' RUN / - odešle obsah příkazového bufferu ke zpracování LIST / Databázové systémy I SAVE jméno souboru - uloží obsah bufferu do textového souboru zadaného jména. pokud na disku stejnojmenný soubor již existuje, lze jej přepsat atributem REPALACE příkazu SAVE CLEAR BUFFER INPUT 1 SELECT * FROM predmety 2 SAVE vypis REPLACE START vypis SQL*PLUS: Formátování výstupů - způsob podtržení - změna tvaru podtržení pomocí požadovaného znaku lze realizovat příkazem SET UNDERLINE znak SET UNDERLINE = SQL*PLUS: Tvar výstupních sestav TTITLE CENTER 'Vypis studentů' BTITLE CENTER 'Určeno pro proděkany fakulty' - platnost příkazů TTITLE a BTITLE je nutno ukončit příkazem: TTITLE OFF nebo BTTITLE OFF. V opačném případě se jejich funkčnost přenáší do dalších akcí SQL*PLUS: Formátování sloupců SHOW parametr - příkaz pro zobrazení aktuální hodnoty systémové proměnné: SHOW BTITLE SELECT * FROM predmety; CLEAR BUFFER INPUT 1 COLUMN nazev HEADING "Název předmětu" 2 COLUMN katedra HEADING "Garantující katedra" 3 SELECT nazev, katedra FROM predmety 4 SAVE vypis1 START vpis1 SQL*PLUS: editace příkazového souboru START vypis LIST GET vypis LIST 1 CHANGE /zamestnance/pracovnika/ SAVE vypis REPLACE START vypis SQL*PLUS: formátování výstupů CLEAR BUFFER INPUT 1 COLUMN jmeno HEADING 'Jméno přednášeícího' FORMAT A20 2 COLUMN plat HEADING 'Výše platu' FORMAT ,99 3 TTITLE 'Výpis platů přednášejících ****************************** 4 SELECT jmeno, plat FROM prednasejici Christy

19 5 SAVE vypisplatu REPLACE START vypisplatu CLEAR COLUMNS; TTITLE OFF; SELECT * FROM prednasejici; SQL*PLUS: JOIN relace sama na sebe SELECT * FROM prednasejici; Příklad: Vypište všechny možné dvojice přednášejících pro možný zástup v případě absence SELECT a.jmeno AS "1. přednášejicí", b.jmeno AS "2. přednášející" 2 FROM prednasejici a, prednasejici b 3 WHERE a.jmeno>b.jemno; SQL*PLUS: nejčastější chyby v testu 1) Vnořený příkaz: CHYBNĚ: SELECT jmeno,min(stip) FROM student; 1) Jméno studenta s nejnižším stipendiem SELECT jmeno,stip FROM student 1 WHERE stip=(select min(stip) FROM student); PROČ: zjištění jména pro stip=min(stip) min(stip) 2) UPDATE UPDATE student SET stip=stip/2 1 WHERE stip>5000; CHYBNĚ: UPDATE student SET stip/2 1 WHERE stip>5000; 3) Pohled ze dvou tabulek PEDAGOG(Cped,Jmeno,Datnar,Katedra) PREDMET(Kodpred,Nazev,Cped) CREATE VIEW vypis 1 (Jmeno,Datnar,Nazev) AS 2 SELECT jmeno,datnar,nazev 3 FROM pedagog,predmet 4 WHERE predagog.cped=předmět.cped; SELECT * FROM vypis; CHYBNĚ: CREATE VIEW vypis 1 (Jmeno,Datnar,Nazev) AS 2 SELECT jmeno,datnar 3 FROM pedagog,predmet 4 WHERE pedagog.cped=předmět.cped; 4) Počty předmětů garantované jednotlivými pedagogy, kteří garantují více jak 3 předměty PEDAGOG(Cped,Jmeno,Datnar,Katedra) PREDMET(Kodpred,Nazev,Cped) SELECT cped,count(*) FROM predmet 1 GROUP BY cped HAVING count(*)>3; CHYBNĚ: SELECT cped,count(*) FROM predmet 1 GROUP BY cped WHERE count(*)>3; SELECT cped,count(*) FROM predmet 1 GROUP BY jmeno WHERE Christy

20 5) Zajištění referenční integrity STUDENT(Cind,Jmeno,obor,datumvolby,koddp) DIPLPRACE(Koddp,Nazev) CREATE TABLE student 1 (cind CHAR(4) PRIMARY KEY, 2 jmeno CHAR(15), 3 obor CHAR(3), 4 datumvolby DATE, 5 koddp CHAR(3), 6 FOREIGN KEY (koddp) REFERENCES diplprace(koddp)); CHYBNĚ: CREATE TABLE student 1 (cind CHAR(4) PRIMARY KEY, 2 jmeno CHAR(15), 3 obor CHAR(3), 4 datumvolby DATE, 5 FOREIGN KEY (koddp) REFERENCES diplprace(koddp)); také chybějící primární klíč SQL*PLUS: příkazové dávky Příkazové soubory a dávkové zpracování příkazový buffer může obsahovat pouze jeden (poslední příkaz) vhodnější: příkazový soubor, lze jej založit: - v základním režimu zadat konkrétní SQL příkaz a pak uložit obsah bufferu příkazem SAVE - v základním režimu zadat příkaz INPUT (přepnutí do režimu vkládání příkazů) a ukončit vkládání lze odesláním prázdného řádku Neopomenout: - vyprázdnit buffer (CLEAR BUFFER) - překontrolovat momentální stav SET - platnost TTITLE a BTITLE ukončit - stav SHOW parametr (TTITLE OFF nebo BTITLE OFF) SQL*PLUS: návrat k uložené příkazové dávce GET vypisplatu možno editovat (CHANGE) možno startovat SQL*PLUS: parametrická dávka - sada příkazů pro opakované použití CLEAR BUFFER INPUT 1 DEFINE titul1='přehled PŘEDNÁŠEJÍCÍCH ZA JEDNOTLIVÉ KATEDRY' 2 DEFINE titul2='======================================' 3 TTITLE LEFT titul1 RIGHT 'Strana: ' SQL.PNO SKIP1 LEFT titul2 4 SET UNDERLINE * 5 COLUMN jmeno HEADING 'Jméno predasejiciho' FORMAT A20 6 COLUMN datnar HEADING 'Datum narozeni' FORMAT A15 7 COLUMN katedra HEADING 'Název katedry' FORMAT A15 8 PROMPT Zadej název požadované katedry 9 ACCEPT pozadkat CHAR 10 SELECT jmeno, datnar, katedra FROM prednasejici 11 WHERE katedra=&pozadkat 12 SAVE vypiskated REPLACE - spuštění parametrické dávky s parametrem KII START vypiskated 'KII' - spuštění parametrické dávky s parametrem KIT START vypiskated 'KIT' Christy

RELAČNÍ DATABÁZOVÉ SYSTÉMY

RELAČNÍ DATABÁZOVÉ SYSTÉMY RELAČNÍ DATABÁZOVÉ SYSTÉMY VÝPIS KONTROLNÍCH OTÁZEK S ODPOVĚDMI: Základní pojmy databázové technologie: 1. Uveďte základní aspekty pro vymezení jednotlivých přístupů ke zpracování hromadných dat: Pro vymezení

Více

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Databázové systémy Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Vývoj databázových systémů Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace 60.-70. léta Program Komunikace Výpočty

Více

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc. 1 Kurz Databáze Zpracování dat Doc. Ing. Radim Farana, CSc. Obsah Druhy dotazů, tvorba dotazu, prostředí QBE (Query by Example). Realizace základních relačních operací selekce, projekce a spojení. Agregace

Více

Databázové systémy. Cvičení 6: SQL

Databázové systémy. Cvičení 6: SQL Databázové systémy Cvičení 6: SQL Co je SQL? SQL = Structured Query Language SQL je standardním (ANSI, ISO) textovým počítačovým jazykem SQL umožňuje jednoduchým způsobem přistupovat k datům v databázi

Více

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE 2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE Studijní cíl Tento blok je věnován základní syntaxi příkazu SELECT, pojmům projekce a restrikce. Stručně zde budou představeny příkazy

Více

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů. Modely datové Existují různé úrovně pohledu na data. Nejvyšší úroveň je úroveň, která zachycuje pouze vztahy a struktury dat samotných. Konceptuální model - E-R model. Další úrovní je logická úroveň Databázové

Více

Databáze SQL SELECT. David Hoksza http://siret.cz/hoksza

Databáze SQL SELECT. David Hoksza http://siret.cz/hoksza Databáze SQL SELECT David Hoksza http://siret.cz/hoksza Osnova Úvod do SQL Základní dotazování v SQL Cvičení základní dotazování v SQL Structured Query Language (SQL) SQL napodobuje jednoduché anglické

Více

8.2 Používání a tvorba databází

8.2 Používání a tvorba databází 8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam

Více

Databáze II. 1. přednáška. Helena Palovská palovska@vse.cz

Databáze II. 1. přednáška. Helena Palovská palovska@vse.cz Databáze II 1. přednáška Helena Palovská palovska@vse.cz Program přednášky Úvod Třívrstvá architektura a O-R mapování Zabezpečení dat Role a přístupová práva Úvod Co je databáze Mnoho dat Organizovaných

Více

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev Úvod do databází Modelování v řízení Ing. Petr Kalčev Co je databáze? Množina záznamů a souborů, které jsou organizovány za určitým účelem. Jaké má mít přínosy? Rychlost Spolehlivost Přesnost Bezpečnost

Více

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR):

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR): Mezi příkazy pro manipulaci s daty (DML) patří : 1. SELECT 2. ALTER 3. DELETE 4. REVOKE Jaké vlastnosti má identifikující relace: 1. Je relace, která se využívá pouze v případě modelovaní odvozených entit

Více

Návrh a tvorba WWW stránek 1/14. PHP a databáze

Návrh a tvorba WWW stránek 1/14. PHP a databáze Návrh a tvorba WWW stránek 1/14 PHP a databáze nejčastěji MySQL součástí balíčků PHP navíc podporuje standard ODBC PHP nemá žádné šablony pro práci s databází princip práce s databází je stále stejný opakované

Více

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL 4 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, datové typy, klauzule SELECT, WHERE, a ORDER BY. Doporučená

Více

Inovace a zkvalitnění výuky prostřednictvím ICT. Základní seznámení s MySQL Ing. Kotásek Jaroslav

Inovace a zkvalitnění výuky prostřednictvím ICT. Základní seznámení s MySQL Ing. Kotásek Jaroslav Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1 Šablona: Název: Téma: Autor: Číslo: Anotace: Inovace a zkvalitnění výuky prostřednictvím ICT Databáze Základní seznámení s MySQL

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

Databázové systémy trocha teorie

Databázové systémy trocha teorie Databázové systémy trocha teorie Základní pojmy Historie vývoje zpracování dat: 50. Léta vše v programu nevýhody poměrně jasné Aplikace1 alg.1 Aplikace2 alg.2 typy1 data1 typy2 data2 vytvoření systémů

Více

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Šablona 32 VY_32_INOVACE_038.ICT.34 Tvorba webových stránek SQL stručné minimum OA a JŠ Jihlava, VY_32_INOVACE_038.ICT.34 Číslo

Více

Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky.

Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky. Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky. Projekt ESF OP VK reg.č. CZ.1.07/2.2.00/28.0209 Elektronické opory a e-learning pro obory výpočtového

Více

Informační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek

Informační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek 5 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, Spojení tabulek, agregační dotazy, jednoduché a složené

Více

Databázové systémy úvod

Databázové systémy úvod Databázové systémy úvod Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2012/13 https://edux.fit.cvut.cz/courses/bi-dbs/ Michal

Více

Relační databázový model. Vladimíra Zádová, KIN, EF, TUL- DBS

Relační databázový model. Vladimíra Zádová, KIN, EF, TUL- DBS Relační databázový model Databázové (datové) modely základní dělení klasické databázové modely relační databázový model relační databázový model Základní konstrukt - relace relace, schéma relace atribut,

Více

Databázové systémy I

Databázové systémy I Databázové systémy I Přednáška č. 8 Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky jiri.zechmeister@upce.cz Skupinové a souhrnné dotazy opakování Obsah Pohledy syntaxe použití význam Vnořené

Více

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Maturitní otázky z předmětu PROGRAMOVÁNÍ Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti

Více

PRŮBĚHOVÝ TEST Z PŘEDNÁŠEK

PRŮBĚHOVÝ TEST Z PŘEDNÁŠEK PRŮBĚHOVÝ TEST Z PŘEDNÁŠEK listopad 2009 souhrn v1 Červené dobře (nejspíš), modré možná Oracle Internet Directory OID: Databáze nemůže z OID přebírat seznam uživatelů *Databáze může získat z OID seznam

Více

Použití databází na Webu

Použití databází na Webu 4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2010/11/18 11:33:52 $ Obsah Co nás čeká... 3 Architektura webových databázových aplikací... 4 K čemu se používají databázové

Více

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) Marketingová komunikace Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) 2. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Minulé soustředění úvod

Více

SQL. strukturovaný dotazovací jazyk. Structured Query Language (SQL)

SQL. strukturovaný dotazovací jazyk. Structured Query Language (SQL) SQL strukturovaný dotazovací jazyk Structured Query Language (SQL) SQL - historie 1974-75 - IBM - 1.prototyp - SEQUEL od 1979 - do praxe - ORACLE (1979) IBM - SQL/DS (1981), DB/2 (1983) postupně přijímán

Více

PL/SQL. Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd.

PL/SQL. Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd. PL/SQL Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd. Rozšířením jazyka SQL o proceduralitu od společnosti ORACLE je jazyk

Více

Analýza a modelování dat 3. přednáška. Helena Palovská

Analýza a modelování dat 3. přednáška. Helena Palovská Analýza a modelování dat 3. přednáška Helena Palovská Historie databázových modelů Relační model dat Codd, E.F. (1970). "A Relational Model of Data for Large Shared Data Banks". Communications of the ACM

Více

2. přednáška. Databázový přístup k datům (SŘBD) Možnost počítání v dekadické aritmetice - potřeba přesných výpočtů, např.

2. přednáška. Databázový přístup k datům (SŘBD) Možnost počítání v dekadické aritmetice - potřeba přesných výpočtů, např. 2 přednáška 2 října 2012 10:32 Souborově orientované uchování dat Slabý HW Není možné uchovávat "velká data" - maximálně řádově jednotky MB Na každou úlohu samostatná aplikace, která má samostatná data

Více

Stored Procedures & Database Triggers, Tiskové sestavy v Oracle Reports

Stored Procedures & Database Triggers, Tiskové sestavy v Oracle Reports , Marek Rychlý Vysoké učení technické v Brně Fakulta informačních technologií Ústav informačních systémů Demo-cvičení pro IDS 9. dubna 2014 Marek Rychlý Stored Procedures & Database Triggers, Demo-cvičení

Více

Úvod do MS Access. Modelování v řízení. Ing. Petr Kalčev

Úvod do MS Access. Modelování v řízení. Ing. Petr Kalčev Úvod do MS Access Modelování v řízení Ing. Petr Kalčev Postup při tvorbě aplikace Vytvoření tabulek Vytvoření relací Vytvoření dotazů Vytvoření formulářů Vytvoření sestav Tabulky Slouží k definování polí,

Více

Operátory ROLLUP a CUBE

Operátory ROLLUP a CUBE Operátory ROLLUP a CUBE Dotazovací jazyky, 2009 Marek Polák Martin Chytil Osnova přednášky o Analýza dat o Agregační funkce o GROUP BY a jeho problémy o Speciální hodnotový typ ALL o Operátor CUBE o Operátor

Více

6. blok část B Vnořené dotazy

6. blok část B Vnořené dotazy 6. blok část B Vnořené dotazy Studijní cíl Tento blok je věnován práci s vnořenými dotazy. Popisuje rozdíl mezi korelovanými a nekorelovanými vnořenými dotazy a zobrazuje jejich použití. Doba nutná k nastudování

Více

Základy databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19

Základy databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19 3 Obsah Novinky v tomto vydání 10 Význam základních principů 11 Výuka principů nezávisle na databázových produktech 12 Klíčové pojmy, kontrolní otázky, cvičení, případové studie a projekty 12 Software,

Více

předměty: ukončení: Zápočet + Zkouška / 5kb např. jméno, název, destinace, město např. student Jan Novák, narozen 18.5.1974

předměty: ukončení: Zápočet + Zkouška / 5kb např. jméno, název, destinace, město např. student Jan Novák, narozen 18.5.1974 základní informace Databázové systémy Úvodní přednáška předměty: KI/DSY (B1801 Informatika - dvouoborová) KI/P502 (B1802 Aplikovaná informatika) ukončení: Zápočet + Zkouška / 5kb ki.ujep.cz termínovník,

Více

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph)

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3aph) 2. a 3. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Co nás čeká: 2. soustředění 16.1.2009

Více

Ukázka knihy z internetového knihkupectví www.kosmas.cz

Ukázka knihy z internetového knihkupectví www.kosmas.cz Ukázka knihy z internetového knihkupectví www.kosmas.cz U k á z k a k n i h y z i n t e r n e t o v é h o k n i h k u p e c t v í w w w. k o s m a s. c z, U I D : K O S 1 8 1 1 4 5 Oracle průvodce správou,

Více

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou MySQL Typy tabulek Storage Engines MyISAM defaultní, neumí transakce, umí fulltext InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) MEMORY (HEAP) v paměti; neumí transakce ARCHIVE velké množství

Více

DBS Konceptuální modelování

DBS Konceptuální modelování DBS Konceptuální modelování Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze Michal.Valenta@fit.cvut.cz c Michal Valenta, 2010 BIVŠ DBS I, ZS 2010/11 https://users.fit.cvut.cz/

Více

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Databáze MS-Access Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Obsah Principy a možnosti databází. Uložení dat v databázi, formáty dat, pole, záznamy, tabulky, vazby mezi záznamy. Objekty databáze

Více

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi.

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi. Databáze Základní pojmy Pojem databáze označuje obecně souhrn informací, údajů, dat o nějakých objektech. Úkolem databáze je hlídat dodržení všech omezení a dále poskytovat data při operacích. Objekty

Více

Access Tabulka letní semestr 2013

Access Tabulka letní semestr 2013 MS Access Tabulka letní semestr 2013 Tvorba nové tabulky importem dat propojením externího souboru pomocí Průvodce v návrhovém zobrazení Návrh struktury tabulky Tabulka záznam pole záznamu Jmeno RodCislo

Více

Stručný obsah. část III Aktualizace dat Kapitola 10: Aktualizace databáze 257 Kapitola 11: Integrita dat 275 Kapitola 12: Zpracování transakcí 307

Stručný obsah. část III Aktualizace dat Kapitola 10: Aktualizace databáze 257 Kapitola 11: Integrita dat 275 Kapitola 12: Zpracování transakcí 307 Stručný obsah část I Přehled jazyka SQL Kapitola 1: Úvod 27 Kapitola 2: Stručný úvod do jazyka SQL 37 Kapitola 3: Jazyk SQL z širšího pohledu 45 Kapitola 4: Relační databáze 69 Část II Získávání dat Kapitola

Více

4IT218 Databáze. 4IT218 Databáze

4IT218 Databáze. 4IT218 Databáze 4IT218 Databáze Osmá přednáška Dušan Chlapek (katedra informačních technologií, VŠE Praha) 4IT218 Databáze Osmá přednáška Normalizace dat - dokončení Transakce v databázovém zpracování Program přednášek

Více

Access. Tabulky. Vytvoření tabulky

Access. Tabulky. Vytvoření tabulky Access správa databáze (tabulky, relace, omezující podmínky, data...) uživatelské prostředí pro práci s databází (formuláře, sestavy, datové stránky, makra...) ukázková aplikace Northwind hlavní okno databáze

Více

Popis ovládání. Po přihlášení do aplikace se objeví navigátor. Navigátor je stromově seřazen a slouží pro přístup ke všem oknům celé aplikace.

Popis ovládání. Po přihlášení do aplikace se objeví navigátor. Navigátor je stromově seřazen a slouží pro přístup ke všem oknům celé aplikace. Popis ovládání 1. Úvod Tento popis má za úkol seznámit uživatele se základními principy ovládání aplikace. Ovládání je možné pomocí myši, ale všechny činnosti jsou dosažitelné také pomocí klávesnice. 2.

Více

Hierarchický databázový model

Hierarchický databázový model 12. Základy relačních databází Když před desítkami let doktor E. F. Codd zavedl pojem relační databáze, pohlíželo se na tabulky jako na relace, se kterými se daly provádět různé operace. Z matematického

Více

Relační databáze. V dnešní době existuje řada komerčních DBMS, nejznámější jsou:

Relační databáze. V dnešní době existuje řada komerčních DBMS, nejznámější jsou: Relační databáze Pojem databáze, druhy databází Databází se myslí uložiště dat. V době začátků využívání databází byly tyto členěny hlavně hierarchicky, případně síťově (rozšíření hierarchického modelu).

Více

1. Relační databázový model

1. Relační databázový model 1. Relační databázový model Poprvé představen 1969 (Dr. Edgar F. Codd) IBM Založeno na Teorii množin Predikátové logice prvního řádu Umožňuje vysoký stupeň nezávislosti dat základ pro zvládnutí sémantiky

Více

DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS. (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat)

DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS. (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat) DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat) DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 62 Databáze a systémy pro uchování

Více

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata Databáze Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu Bedřich Košata K čemu jsou databáze Ukládání dat ve strukturované podobě Možnost ukládat velké množství dat

Více

SQL v14. 4D Developer konference. 4D Developer conference 2015 Prague, CZ Celebrating 30 years

SQL v14. 4D Developer konference. 4D Developer conference 2015 Prague, CZ Celebrating 30 years SQL v14 4D Developer konference Obsah části SQL Porovnání 4D a SQL Nové příkazy SQL Upravené příkazy SQL Optimalizace SQL SQL v14 porovnání Definice dat - struktury Manipulace s daty Definice dat Vytvoření

Více

S databázemi se v běžném životě setkáváme velmi často. Uvádíme běžné použití databází velkého rozsahu:

S databázemi se v běžném životě setkáváme velmi často. Uvádíme běžné použití databází velkého rozsahu: Úvod do databází Základní pojmy Databáze je množina záznamů, kterou shromažďujeme za nějakým konkrétním účelem. Databáze používáme zejména pro ukládání obsáhlých informací. Databázové systémy jsou k dispozici

Více

Databáze v MS ACCESS

Databáze v MS ACCESS 1 z 14 19.1.2014 18:43 Databáze v MS ACCESS Úvod do databází, návrh databáze, formuláře, dotazy, relace 1. Pojem databáze Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele,

Více

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: Anotace: CZ.1.07/1.5.00/34.0410

Více

Ukládání a vyhledávání XML dat

Ukládání a vyhledávání XML dat XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2014/12/04 19:41:24 $ Obsah Ukládání XML dokumentů... 3 Ukládání XML do souborů... 4 Nativní XML databáze... 5 Ukládání

Více

Materiál ke cvičením - SQL

Materiál ke cvičením - SQL Materiál ke cvičením - 1. Stručná syntaxe vybraných příkazů jazyka (detailní syntaxe příkazů je uvedena on-line manuálech přístupných z prostředí sítě VŠE) SELECT výběr a zobrazení hodnot z databáze: SELECT

Více

24 Uživatelské výběry

24 Uživatelské výběry 24 Uživatelské výběry Uživatelský modul Uživatelské výběry slouží k vytváření, správě a následnému používání tématicky seskupených osob a organizací včetně jejich kontaktních údajů. Modul umožňuje hromadnou

Více

Popis programu EnicomD

Popis programu EnicomD Popis programu EnicomD Pomocí programu ENICOM D lze konfigurovat výstup RS 232 přijímačů Rx1 DIN/DATA a Rx1 DATA (přidělovat textové řetězce k jednotlivým vysílačům resp. tlačítkům a nastavovat parametry

Více

DATABÁZE MS ACCESS 2010

DATABÁZE MS ACCESS 2010 DATABÁZE MS ACCESS 2010 KAPITOLA 5 PRAKTICKÁ ČÁST TABULKY POPIS PROSTŘEDÍ Spuštění MS Access nadefinovat název databáze a cestu k uložení databáze POPIS PROSTŘEDÍ Nahoře záložky: Soubor (k uložení souboru,

Více

J. Zendulka: Databázové systémy 4 Relační model dat 1

J. Zendulka: Databázové systémy 4 Relační model dat 1 4. Relační model dat 4.1. Relační struktura dat... 3 4.2. Integritní pravidla v relačním modelu... 9 4.2.1. Primární klíč... 9 4.2.2. Cizí klíč... 11 4.2.3. Relační schéma databáze... 13 4.3. Relační algebra...

Více

Kapitola 6: Omezení integrity. Omezení domény

Kapitola 6: Omezení integrity. Omezení domény - 6.1 - Omezení domény Referenční integrita Aserce Spouštěče (Triggers) Funkční závislosti Kapitola 6: Omezení integrity Omezení domény Omezení integrity zabraňují poškození databáze; zajišťují, že autorizované

Více

Kapitola 4: SQL. Základní struktura

Kapitola 4: SQL. Základní struktura - 4.1 - Kapitola 4: SQL Základní struktura Množinové operace Souhrnné funkce Nulové hodnoty Vnořené poddotazy (Nested sub-queries) Odvozené relace Pohledy Modifikace databáze Spojené relace Jazyk definice

Více

Maturitní témata Školní rok: 2015/2016

Maturitní témata Školní rok: 2015/2016 Maturitní témata Školní rok: 2015/2016 Ředitel školy: Předmětová komise: Předseda předmětové komise: Předmět: PhDr. Karel Goš Informatika a výpočetní technika Mgr. Ivan Studnička Informatika a výpočetní

Více

SQL - trigger, Databázové modelování

SQL - trigger, Databázové modelování 6. přednáška z předmětu Datové struktury a databáze (DSD) Ústav nových technologií a aplikované informatiky Fakulta mechatroniky, informatiky a mezioborových studií Technická univerzita v Liberci jan.lisal@tul.cz

Více

Optimalizace dotazů a databázové transakce v Oracle

Optimalizace dotazů a databázové transakce v Oracle Optimalizace dotazů a databázové transakce v Oracle Marek Rychlý Vysoké učení technické v Brně Fakulta informačních technologií Ústav informačních systémů Demo-cvičení pro IDS 22. dubna 2015 Marek Rychlý

Více

5. Formalizace návrhu databáze

5. Formalizace návrhu databáze 5. Formalizace návrhu databáze 5.1. Úvod do teorie závislostí... 2 5.1.1. Funkční závislost... 2 5.1.2. Vícehodnotová závislost (multizávislost)... 7 5.1.3. Závislosti na spojení... 9 5.2. Využití teorie

Více

Příručka uživatele HELPDESK GEOVAP

Příručka uživatele HELPDESK GEOVAP HELPDESK GEOVAP verze 1.2 11.11.2008 OBSAH 1 REGISTRACE DO HELPDESK...1 2 PŘIHLÁŠENÍ A ODHLÁŠENÍ...1 3 ZÁKLADNÍ OBRAZOVKA HELPDESK...2 4 PŘEHLED HLÁŠENÍ...2 5 ZALOŽENÍ NOVÉHO HLÁŠENÍ...3 6 ZOBRAZENÍ/EDITACE

Více

4IT218 Databáze. 4IT218 Databáze

4IT218 Databáze. 4IT218 Databáze 4IT218 Databáze Pátá přednáška Dušan Chlapek (katedra informačních technologií, VŠE Praha) 4IT218 Databáze Pátá přednáška SQL - DDL - dokončení SQL - DCL Vlastnosti relačních databázových systémů. Princip

Více

Profilová část maturitní zkoušky 2013/2014

Profilová část maturitní zkoušky 2013/2014 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2013/2014 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA

Více

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz

Více

Maturitní témata z předmětu PROGRAMOVÉ VYBAVENÍ pro šk. rok 2012/2013

Maturitní témata z předmětu PROGRAMOVÉ VYBAVENÍ pro šk. rok 2012/2013 Maturitní témata z předmětu PROGRAMOVÉ VYBAVENÍ pro šk. rok 2012/2013 1. Nástroje programu MS Word a) vysvětlete pojmy šablona, styl (druhy stylů) význam a užití, b) vysvětlete pojem oddíl (druhy oddílů),

Více

Databáze pro evidenci výrobků

Databáze pro evidenci výrobků Databáze pro evidenci výrobků Databáze ve formátu Microsoft Access je součástí systému, který řídí automatizovanou výrobní linku. Tabulka tblcharge obsahuje data o výrobcích a je plněna automaticky řídicím

Více

Semestrální práce z DAS2 a WWW

Semestrální práce z DAS2 a WWW Univerzita Pardubice Fakulta elektrotechniky a informatiky Semestrální práce z DAS2 a WWW Databázová část Matěj Trakal 8.12.2009 Kapitola 1: Obsah KAPITOLA 1: OBSAH 2 KAPITOLA 2: ZÁKLADNÍ CHARAKTERISTIKA

Více

Microsoft Access tvorba databáze jednoduše

Microsoft Access tvorba databáze jednoduše Microsoft Access tvorba databáze jednoduše Časový rozsah: 2 dny (9:00-16:00) Cena: 3300 Kč + DPH Úvod do relačních databází. Funkce databázových objektů Microsoft Access. Návrh tabulek, definice základních

Více

BALISTICKÝ MĚŘICÍ SYSTÉM

BALISTICKÝ MĚŘICÍ SYSTÉM BALISTICKÝ MĚŘICÍ SYSTÉM UŽIVATELSKÁ PŘÍRUČKA Verze 2.3 2007 OBSAH 1. ÚVOD... 5 2. HLAVNÍ OKNO... 6 3. MENU... 7 3.1 Soubor... 7 3.2 Měření...11 3.3 Zařízení...16 3.4 Graf...17 3.5 Pohled...17 1. ÚVOD

Více

Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava. Úvod do databázových systémů 2012/2013 IS MHD

Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava. Úvod do databázových systémů 2012/2013 IS MHD Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava Úvod do databázových systémů 2012/2013 IS MHD Jiří Znoj, (zno0011) Ostrava, 29. listopadu 2012 I. Obsah I. Obsah...

Více

43 HTML šablony. Záložka Šablony v systému

43 HTML šablony. Záložka Šablony v systému 43 HTML šablony Modul HTML šablony slouží ke správě šablon pro výstupy z informačního systému modularis ve formátu HTML. Modul umožňuje k šablonám doplňovat patičku, dokumentaci a vázat šablony na konkrétní

Více

TEORIE ZPRACOVÁNÍ DAT

TEORIE ZPRACOVÁNÍ DAT Vysoká škola báňská - Technická univerzita Ostrava Fakulta elektrotechniky a informatiky TEORIE ZPRACOVÁNÍ DAT pro kombinované a distanční studium Jana Šarmanová Ostrava 2003 Jana Šarmanová, 2003 Fakulta

Více

Úvod do databázových systémů

Úvod do databázových systémů Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 5 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování K čemu se používají

Více

Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN RESEARCH / DATA

Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN RESEARCH / DATA Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN RESEARCH / DATA Modul FADN RESEARCH je určen pro odborníky z oblasti zemědělské ekonomiky. Modul neomezuje uživatele pouze na předpřipravené

Více

Microsoft Access. Typy objektů databáze: Vytvoření a návrh nové tabulky. Vytvoření tabulky v návrhovém zobrazení

Microsoft Access. Typy objektů databáze: Vytvoření a návrh nové tabulky. Vytvoření tabulky v návrhovém zobrazení Microsoft Access Databáze je seskupení většího množství údajů, které mají určitou logiku a lze je určitým způsobem vyhodnocovat, zpracovávat a analyzovat Access je jedním z programů určených pro zpracování

Více

5 Evidence manželských smluv

5 Evidence manželských smluv 5 Evidence manželských smluv 5.1 Společné vyhledávání v evidencích Společné vyhledávání v evidencích slouží k vyhledání evidovaných závětí, listin i smluv a to pouze vyhledáním podle rodného čísla a data

Více

6. SQL složitější dotazy, QBE

6. SQL složitější dotazy, QBE 6. SQL složitější dotazy, QBE Příklady : Veškeré příklady budou dotazy nad databází KONTAKTY nebo KNIHOVNA nebo FIRMA Databáze KONTAKTY OSOBA (Id_osoba, Příjmení, Jméno, Narození, Město, Ulice, PSČ) EMAIL

Více

Vstupní požadavky, doporučení a metodické pokyny

Vstupní požadavky, doporučení a metodické pokyny Název modulu: Základy PHP Označení: C9 Stručná charakteristika modulu Modul je orientován na tvorbu dynamických stánek aktualizovaných podle kontextu volání. Jazyk PHP umožňuje velmi jednoduchým způsobem

Více

Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN BASIC

Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN BASIC Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN BASIC Modul FADN BASIC je určen pro odbornou zemědělskou veřejnost bez větších zkušeností s internetovými aplikacemi a bez hlubších

Více

Databázové a informační systémy Jana Šarmanová

Databázové a informační systémy Jana Šarmanová Databázové a informační systémy Jana Šarmanová Obsah Úloha evidence údajů, způsoby evidování Databázové technologie datové modely, dotazovací jazyky. Informační systémy Datové sklady Metody analýzy dat

Více

Marketingová komunikace. 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3bph)

Marketingová komunikace. 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3bph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3bph) 3. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Zdroje Studijní materiály Heleny Palovské

Více

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

Více

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D. http://siret.cz/hoksza

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D. http://siret.cz/hoksza Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hksza, Ph.D. http://siret.cz/hksza Osnva Seznámení s SQL Server Management Studiem (SSMS) Základní architektura

Více

45 Plánovací kalendář

45 Plánovací kalendář 45 Plánovací kalendář Modul Správa majetku slouží ke tvorbě obecných ročních plánů činností organizace. V rámci plánu je třeba definovat oblasti činností, tj. oblasti, ve kterých je možné plánovat. Každá

Více

Jazyk S Q L základy, příkazy pro práci s daty

Jazyk S Q L základy, příkazy pro práci s daty Jazyk S Q L základy, příkazy pro práci s daty Základní pojmy jazyk množina řetězců nad abecedou gramatika popisuje syntaxi výrazů jazyka pravidla, jak vytvářet platné řetězce jazyka. dotazovací jazyk je

Více

POSTUP PRO VYTVOŘENÍ STRUKTUR PRO UKLÁDÁNÍ RDF DAT V ORACLE

POSTUP PRO VYTVOŘENÍ STRUKTUR PRO UKLÁDÁNÍ RDF DAT V ORACLE POSTUP PRO VYTVOŘENÍ STRUKTUR PRO UKLÁDÁNÍ RDF DAT V ORACLE Upozornění: Pro práci s RDF Oracle daty je třeba mít nainstalován Oracle Spatial Resource Description Framework (RDF). 1. Vytvoření tabulkového

Více

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika Vyšší odborná škola ekonomická a zdravotnická a Střední škola, Boskovice INOVACE PŘEDMĚTŮ ICT MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika Zpracoval: Jaroslav Kotlán srpen 2009s Úvod Modul Programování

Více

01. Kdy se začala formovat koncept relačních databází (Vznik relačního modelu, první definice SQL)? a) 1950 b) 1960 c) 1970 d) 1980

01. Kdy se začala formovat koncept relačních databází (Vznik relačního modelu, první definice SQL)? a) 1950 b) 1960 c) 1970 d) 1980 01. Kdy se začala formovat koncept relačních databází (Vznik relačního modelu, první definice SQL)? a) 1950 b) 1960 c) 1970 d) 1980 02. Kdy přibližně vznikly první komerční relační databázové servery?

Více

Databázové a informační systémy

Databázové a informační systémy Databázové a informační systémy 1. Teorie normálních forem Pojem normálních forem se používá ve spojitosti s dobře navrženými tabulkami. Správně vytvořené tabulky splňují 4 základní normální formy, které

Více