Objektově relační model

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

Download "Objektově relační model"

Transkript

1 RMD zhodnocení modelu Objektové paradigma OR model dat Klasifikace DBMS - zdroj: Stonebraker M., 1996 Schopnost vyhledaní, podpora víceuživatel. služeb R DBMS Objektově relační model OR DBMS Souborové systémy OO DBMS Složitost dat, rozšiřitelnost Souborové systémy - jednoduchá data, nemají požadavky na dotazy nad daty (Word) OO DBMS - zpracovávají složitá data, nemají významné požadavky na vyhledávání (CAD ) RDBMS - jednoduchá data, komplexní požadavky na dotazy ORDBMS komplexní data, komplexní požadavky na dotazy 1

2 Silné stránky RDBM silný teoretický základ teorie podporovaná vývojem SQL - je standardní jazyk pro definici a manipulaci dat v relační databázi jednoduchost a vhodnost pro OLTP podpora nezávislosti dat Slabé stránky RDBM (1) slabá reprezentace reálných entit normalizace vede k tomu, že relace nekorespondují s entitami reálného světa fragmentace reálných entit do mnoha relací při dotazování dochází k mnoha spojením (2) semantic overloading (semantické zahlcení) relace je jediný konstrukt - pro reprezentaci dat i vztahů nemá mechanismus pro odlišení entit a vztahů pro reprezentaci vztahu (binárního) s kardinalitou M:N vytváří 3 relace, 1 je vztahová 2

3 Slabé stránky RDBM (3) slabá podpora integrity a omezení (enterprise contraints) týká se validity a konzistence uložených dat (typy omezení - doménová, entitní a referenční integrita) mnoho komerčních systémů nepodporuje plně, pak je nutné vystavět je v aplikacích -může vést k duplikaci i nekonzistenci Slabé stránky RDBM (4) homogenní datová struktura RMD předpokládá horizontální i vertikální homogenitu horizontální homogenita - každýřádek musí být komponován ze stejných atributů vertikální homogenita - hodnoty atributů (sloupců) relace musí být ze stejných domén průnikřádku a sloupce musí být atomická hodnota ( atribut je atomický) pevná struktura je příliš omezující pro reálné objekty př. Letadlo - není vnořováníčástí, subčástí - požadavek komplexního objektu - kontejner v mnoha RDBM nyní umožněno vkládání BLOB (Binary Large Object) 3

4 Slabé stránky RDBM BLOB obsahuje binární datovou reprezentaci -obraz, video nebo audio sekvence, rozsáhlé nestrukturované objekty BLOB nemůže obsahovat jiný BLOB» není složený objekt (composite object)» DBMS nezná jeho obsah nebo jeho interní strukturu» to zabraňuje provádění dotazů dovnitř, na jeho obsah Př.: obrázek je uložen jako BLOB v RDBM - ale může být jen uložen a zobrazen, nelze manipulovat s jeho vnitřní strukturou (5) omezení operací Slabé stránky RDBM má pouze pevnou množinu operací - množinové operace, operace s řádky - nelze rozšířit to je omezující model chování pro objekty reálného světa (6) obtížná manipulace s rekurzivními otázkami př. relace : R{c-zam, c- ved} kde c- zam je uvedenočíslo zaměstnance a c-ved -číslo jeho bezprostředního nadřízeného (vyplněno pro všechny zaměstnance) chci znát všechny vedoucí zaměstnance - přímé a nepřímé 4

5 Slabé stránky RDBM (7) Impedance mismatch (neshoda ) = vnoření SQL do procedurálního jazyka - dvou odlišných paradigmat (deklarativního, neprocedurálního a procedurálního jazyka ) potíže SQL poskytuje typy navíc DATE a INTERVAL - třeba konverze ( asi 30 % programátor. kapacity ) při užití dvou různých typů systémů není možná automatická kontrola aplikace jako celku důvod: SQL -92 postrádá výpočení úplnost neobsahuje příkazy typu IF-THEN -ELSE, DO WHILE, FOR CASE ty musí být implementovány prg. embedded SQL - umožňuje uplatnit SQL příkazy v procedurálním jazyce Slabé stránky RDBM Nevhodnost pro dlouhotrvající transakce transakce v obchodních procesech jsou zpravidla krátké, paralelnířízení dlouhých není vhodné obtížnost změny schémat 5

6 Objektovost ORMD Třída/objekt x typ entity/entita Zapouzdření Dědičnost Polymorfismus Identifikace objektu OID Způsob komunikace mezi objekty, vztah mezi objekty 6

7 Objektové paradigma - zapozdřenost zapouzdřenost ( encapsulation) je uzavřenost objektu vůči okolí zapouzdření vede k logickému chování objektů a konzistenci stavů v objektu obsažené atributy a metody jsou vůči sobě viditelné metody vykonávajíčinnost nad atributy objektu část atributů a metod je soukromá, z vnějšku neviditelná a nepřístupná metody objektu jsou jedinou možností jak pracovat s vnitřními atributy objektu zasíláním zpráv, které vyvolají metody objektu. Objektové paradigma - dědičnost a polymorfismus dědičnost je uplatnění generalizace třídy mohou vytvářet hierarchie (jednu i více) třída nižší úrovně (potomek) dědí všechny vlastnosti třídy vyšší úrovně (rodiče) zděděné vlastnosti (data i metody) lze doplnit speciálními ( u metod i dat) či je nahradit (metody) 7

8 Objektové paradigma - dědění - rozšíření podtřída je rozšířením nadtřídy, pokud obsahuje další metody, které nemají stejné rozhraní jako metody nadtřídy při dědění metod může nastat, že objekty mohou reagovat na tutéž zprávu různě: zpráva vyvolává metodu se stejným názvem a parametry ale může být v dané třídě (podtřídě) implementována různě - tato vlastnost se nazývá polymorfismus, je nejčastěji realizována zastíněním vztahy mezi třídami a objekty link je instancí asociace, asociace je abstrakcí linku asociace je vztah mezi třídami (binární, n-ární vztah) je skupina linků se společnou strukturou a společnou semantikou link je spojení mezi objekty, po kterém může být předána zpráva vysílající objekt prostřednictvím zprávy požaduje zaslání dat, či provedení operace linky téže asociace spojují objekty těchže tříd 8

9 Objektový přístup - vztahy mezi třídami asociace může být obecná jednostranná pouze jedna třída zná rozhraní druhé třídy oboustranná obě třídy znají rozhraní druhé třídy agregace je speciálním případem asociace objekt agregující třídy obsahuje jiné objekty ( skládá se z), t.j.objekt může být kontejnerem, který obsahuje objekty jiné třídy Objektový přístup - agregace agregované objekty většinou přístupné prostřednictvím agregujícího objektu - kontejneru komunikace mezi kontejnerem a jeho objekty (přenos požadavku) se uskutečňuje: propagací kontejnerřeší úkol jeho předáním svým objektům výběrem kontejner předá úkol vybranému objektu oběžníkem úkolřeší ten objekt, který se přihlásil na dotaz kontejneru pokud objekty budou obsaženy ve více kontejnerech, pak je jeden kontejner vlastní ( a tím rozhoduje o jeho existenci), ostatní užívají 9

10 OID - object identifier každému objektu je přiřazeno OID, když je objekt vytvořen je generován systémem uživatel nemůže měnit, max můžečíst, ideálně není vůbec viditelný je jedinečný, neměnný po dobu existence objektu unikátnost platí v rámci celého systému nebude znovu použito pro jiné objekty ani po skončení existence objektu nezávisí na hodnotách jeho atributů OID OID zajistí unikátní identifikaci objektu tím automaticky poskytuje entitní integritu je silnější omezení než entitní integrita v RMD, kde unikátnost je zajištěna v rámci relace v RMD PK zajišťuje entitní integritu - je tedy založeno na hodnotách atributů objekt se může odkazovat na jiné objekty nebo je obsahovat (musí platit, že objekt existuje) 10

11 OID výhody užití OID efektivnost - OID požaduje min. paměť rychlost při nalezení objektů nemohou být modifikovány uživatelem uživatel se vyhne údržbě integrity nezávislost na obsahu Atributy v objektech jednoduché atributy primitivní typy - real, integer, string komplexní atributy obsahují kolekce např. atribut prodavači obsahuje kolekci objektů reprezentují vztahy mezi objekty, obsahují kolekce hodnot, které jsou samy objekty odkazy - referenční atributy obsahově podobný jako FK v RMD 11

12 Objektový model OODM (objektově orientovaný datový model) je datový model vycházející z objektového paradigmatu OO = OO DB + OODBMS OODB je perzistentní a sdílená množina objektů definovaných OODM problematika v nejednotnosti přístupu, někteří autoři dokonce nepovažují za základ dědičnost např. Khoshafian a Abnous v r definují OO DBMS jako: objektová orientace = ADT + dědičnost + objekty OODBMS = objektová orientace + databáze OR DBMS 12

13 Objektově relační databáze ( OR DBMS) synonyma rozšířená relační (Extended ERDBMS) a "objektově-relační (OR DBMS) či Universal Server (Universal DBMS - UDBMS) obsahují některé OO rysy zapouzdření, dědičnost, polymorfismus, dynamickou vazbu metod, complex object, OID vložení triggerů (metod, procedur) do databáze je považováno za objektovost mohou mít uplatněny jen některé z těchto rysů vždy vycházejí z RDBMS - základních relací a SQL ORDBMS je specifikována v rozšíření SQL standardu SQL3 Do této kategorie patří např. Informix, IBM, Oracle a Unisys. Rozšiřitelnost, uživatelsky definované typy a funkce Požadavek: manipulace BLOB (v RSŘBD atomický) Rozšiřitelnost: možnost přidávání nových datových typů + programů (funkce) zabalených do speciálního modulu UDT (uživatelsky definované typy) UDF (uživatelsky definované funkce) Problém: zapojení do relačního SŘBD DB/2: relační extendery Informix: DataBlades ORACLE: cartridges univerzální servery Sybase: Component Integration Layer. 13

14 Rozšiřitelnost, uživatelsky definované typy a funkce Př.: DB/2 obrazový, video, audio, textový, mapy, časovéřady VideoCharger (audio a video objekty v reálném čase), XML Př.: Informix v r více než 25 DataBlades: analýza dat pomocí fuzzy logiky, čištění (pro datové sklady), zpracování dokumentů v ruském jazyce Př.: Oracle intermedia - cartridge pro prostorové objekty, časové řady, vyhledávání ve vizuálních informacích (obrázcích) Výhody Objektově relační model znovupoužívání a sdílení vyplývá ze schopnosti rozšířit DBMS server k vykonání funkcionality centrálně ( př. prostorové datové typy(spatial data) - body, přímky, polygony a s tím spojené funkce - výpočet vzdáleností, určení zda ječástí, překrývání, částí polygonů) umístění na serveru a možnost sdílení funkcionality ve všech aplikacích využití RDBM není tak drahé a nepřístupné, je ověřené evoluční vývoj bez ztráty užitku původního Nevýhody vyčítáno puristy z obou stran - málo objektovosti, odklon od RDBM 14

15 Objektově relační model manifest 3.generace databázových systémů publikován CADF - (Committee for Advanced DBMS Function) cíle: bohatost typů, dědičnost,funkce zahrnující metody a zapouzdření přiřazení unikátních identifikátorů - pokud není uživatelem def. PK přístupy k databázi - pomocí neprocedurálního jazyka vysoké úrovně. současné implementace ORSŘBD zatím v počátcích paralela: výtky OOSŘBD - málo databázové výtky ORSŘBD - málo objektové chybí vývojové prostředky, nové metodologie největší problém a současně výhoda: univerzálnost ORDBMS ORDBMS "přidávají objektovost do tabulek jsou nadmnožinou RDBMS Rozšíření relačního modelu o objekty a konstrukty pro manipulaci nových datových typů základ tabulka, ale data mohou mít bohatší datovou strukturu - abstraktní datové typy (ADT) rozšíření relačního modelu o objekty a konstrukty pro manipulaci nových datových typů atributy n-tic jsou složité typy, včetně hnízd zděných relací kompatibilita s existujícími relačními jazyky (tvoří podmnožinu) pokud nevyužijeme žádné objektové rozšíření jsou ekvivalentní SQL2 proto omezená podpora dědičnosti, polymorfismu, referencí a integrace s programovacím jazykem. zachovány jsou relační základy včetně deklarativního přístupu k datům 15

16 SQL-92 Rozšíření základních datových typů uživatelsky definované typy omezená škála datových typů a operací číselné, znakový řetězec, datum, čas, interval atomicita pro každý typ definuje přesnou množinu operátorů a funkcí Charakteristiky rozšíření Charakteristické rysy kvalitního OR systému Rozšíření základních datových typů Složité objekty Dědičnost Pravidla Uživatelsky definované funkce a operátory k uživatelsky definovaným datovým typům 16

17 Rozšíření základních datových typů CREATE TYPE obdoba CREATE DOMAIN Procedury a funkce programy vyvolatelné v SQL: procedury a funkce procedury mají parametry typu IN, OUT, INOUT funkce mají parametry jen typu IN, vracejí hodnotu konstrukce programů: hlava i tělo v SQL (buď 1 SQL příkaz nebo BEGIN END) hlava v SQL, tělo externě definované volání programů: procedura: CALL jméno_procedury(p1,p2,,pn) funkce: funkcionálně f(x,y) v ADT přibudou metody 17

18 Uživatelsky definované funkce - k typům definovaným uživatelem funkce lze psát v SQL Funkce psané v SQL se při vykonávání dotazu rozvinou Zjednodušuje dotazy, nesníží výkonnost Server provede za běhu substituci v dotazu jazyku třetí generace ( C, VB, Java..) funkce jsou neprůhledné, při vykonání se zavolají (nejdou rozvinout) CREATE FUNCTION jméno_ funkce (t1,t2.) RETURNING jméno_typu AS [jmeno souboru db výraz] LANGUAGE [jazyk rutiny] 18

19 Uživatelsky definované operátory operátor z hlediska syntaxe je funkcí se dvěma argumenty v SQL je speciálním druhem funkce se dvěma argumenty a odlišnou notací vytvoření: vytvoření funkce svázání se symbolem operátoru CREATE OPERATOR BINDING jmeno_operatoru TO jmeno_funkce 19

20 SLOŽITÉ OBJEKTY objekty složené z několika základních nebo uživatelsky definovaných datových typů základní: řádek množiny (kolekce) odkazy Konstruktor typu řádek CREATE ROW TYPE jméno_typu ( jmeno_složky dat_typ,.) Pozn.: složky mohou být základními typy i typ řádek, množina, odkaz) Použití: 1. tabulka jako kontejner použití k vytvořenířady tabulek, které obsahují instance stejného typu 2. použít do sloupce tabulky (složky datového typu) 20

21 Př. CREATE ROW TYPE t_zamestnanec ( jmeno VARCHAR(30), Nastup DATE). Tabulka jako kontejner: CREATE TABLE zamestnanec OF TYPE t_zamestnanec. jako sloupec tabulky: CREATE TABLE funkce ( c_funkce Integer,.. zamestnanec t_zamestnanec) spojení funkce se zaměstnancem, který tuto funkci vykonává konstruktory kolekce (collection) je dán libovolný typ T, potom collection (T) musí být také datový typ. vyžadována podpora kolekcí: jednoduchých datových typů řádků kolekcí odkazů Pozn: SQL3 návrh konstruktorů množiny, multimnožiny a seznamu; každý klade na členství v množině jiné nároky 21

22 Konstruktor typu odkaz (references, pointers) Je dán libovolný typ T, potom ref (T) musí být také datový typ, který se dá použít jako typ libovolného sloupce tabulky odkaz na : řádek kolekci Jednoduchý datový typ Příklad CREATE ROW TYPE t_oddeleni ( nazev CHAR(30) vedouci CHAR(20) telef t_telef vozy set(t_vuz) vedouci_odd ref(t_zamestnanec) REFERENCES (zamestnanec) pracovnici set(ref(t_zamestnanec) REFERENCES (zamestnanec))). Typ řádek Kolekce řádků Kolekce odkazů CREATE TABLE oddeleni of type t_oddeleni 22

23 Manipulace s typem řádek - rozšíření standardního SQL 1. UDF mohou přijímat argumenty nebo vracet návratové hodnoty typu řádek CREATE FUNCTION premie (t_zamestnanec arg1) RETURNING int AS SELECT arg1.plat * 0,1 SELECT premie(z) FROM zamestnanec WHERE z.jmeno = MIKE Typ řádek SELECT z.jmeno FROM zamestnanec z WHERE premie(z) > 1000 Tečková notace (Path expression) Jmeno_ tabulky.jmeno_sloupce Odkazuje na sloupce tabulky, lze užit i k odkazům na sloupce typu řádek SELECT telef.cislo FROM oddeleni WHERE nazev = obuv Pozn.: cislo je jen dílčí pole ze sloupce telef (typ řádek) SELECT nazev FROM oddeleni WHERE telef.oblast = 510 Jmeno_atributu(jmeno_funkce) řádek, v němž jméno funkce představuje jméno atributu ( každý jeho atribut má jednu funkci) SELECT nazev FROM oddeleni WHERE oblast(telef) =

24 Manipulace s kolekcemi řádků Tečková notace SELECT název FROM oddeleni WHERE FORD in vozy.jmeno Pozn.: vozy.jmeno definují množinu Příklad CREATE ROW TYPE t_oddeleni ( nazev CHAR(30) vedouci CHAR(20) telef t_telef vozy set(t_vuz) vedouci_odd ref(t_zamestnanec) REFERENCES (zamestnanec) pracovnici set(ref(t_zamestnanec) REFERENCES (zamestnanec))). Typ řádek Kolekce řádků Kolekce odkazů CREATE TABLE oddeleni of type t_oddeleni 24

25 = náhrada PK, FK odkazy Viz tab. Oddeleni: vedouci je FK obsahujícím číslo zaměstnance vedoucího daného oddelení ( viz DSY PK=FK při spojení) vedouci_odd - identifikace téhož Konceptuálně = ukazatel na typ řádku v tabulce (skutečná hodnota uložená v poli vedoucí oddělení je OID ) Podpora odkazů vyžaduje rozšíření SQL funkci DEREF vrací skutečný řádek - při zadání odkazu Podporu funkcí, které přijímají argumenty, či vracejí výsledky typu odkaz SELECT vedoucí_odd FROM oddeleni vrátí odkaz na zaměstnance- vedoucího ( OID) SELECT DEREF(vedouci_odd) FROM oddeleni..funkce přijme odkaz na vedoucího, vracířádek na který odkazuje Odkazy deref/ref CREATE FUNCTION dej_vedouci (varchar(30) arg1) RETURNING t-zamestnanec AS SELECT deref(vedoucí_odd) FROM oddeleni WHERE oddeleni = arg1) Funkce REF - slouží k získání hodnoty OID SELECT REF(DEREF(dej_vedouci)) FROM oddeleni WHERE nazev= obuv) zavedeni nového vedouciho UPDATE oddeleni SET vedouci = MAREK WHERE Nazev = obuv UPDATE oddeleni SET vedouci_odd = (SELECT REF(zamestnanec) FROM zamestnanec WHERE jmeno = MAREK ) 25

26 SELECT DEREF(vedouci_odd).nastup, DEREF(vedouci_odd).plat FROM oddeleni Užití vazba PK-FK x ref (=OID) odkazy bezpečnější, garantují unikátnost a neměnnost OID, ale méně čitelné Kolekce odkazů SELECT pracovnici FROM oddeleni WHERE nazev = obuv.. Vrací kolekci OID SELECT deref(*) FROM TABLE (SELECT pracovnici FROM oddeleni WHERE nazev = obuv ) SELECT deref(*).nastup FROM TABLE (SELECT pracovnici FROM oddeleni WHERE nazev = obuv ) 26

27 Dědičnost - umožňuje sdružovat složené typy do hierarchie dědičnosti - nadtyp, podtyp - pomocí under - podpora vícenásobné dědičnosti od více supertypů - Pokud nejednoznačnost (z obou dědí stejné jméno, jiná specifikace různé přístupy- potlačení, či jiná ošetření) - podpora modularity a konzistence při opakujícím se využití prvků schématu - platí pouze pro datové typy doporučení vytvořit typy, pak je přiřadit tabulkám - typ nemá paměť ěť,, pro uložen ení instancí typu třeba t vytvořit tabulky Dědičnost - podpora dědičnosti dat a funkcí - podpora přetížení (polymorfismus) - schopnost odlišit funkce pro podtypy a nadtypy - typy a tabulky musí představovat samostatný koncept - typová hierarchie, odděleně definované tabulky (tabulka jako kontejner) - podpora vícenásobné dědičnosti - dědění subtypu od dvou odlišných supertypů 27

28 Dědičnost -příklad CREATE TYPE t_osoba ( jmeno varchar(30)) CREATE TYPE t_zamestnanec ( plat int, nastup date adresa varchar(30) město varchar (30) stat varchar(30) PSC int) Under t_osoba. CREATE TYPE t_student ( Prospech decimal) UNDER t_osoba Vícenásobná dědičnost - příklad CREATE TYPE zamestnany_student( procento decimal) UNDER t_zamestnanec, t_student 28

29 Dědičnost příklad CREATE TABLE osoba of type t_osoba. CREATE TABLE zamestnanec OF TYPE t_zamestnanec UNDER osoba. CREATE TABLE student OF TYPE t_student UNDER osoba. CREATE TABLE zamestnaný_student OF TYPE t_zamestnany_student UNDER student, zamestnanec. SELECT jmeno FROM zamestnanec WHERE plat = Dědičnost manipulace obor hodnot = tab. zaměstnanec a všechny pod ním SELECT jmeno FROM ONLY(zamestnanec) WHERE plat = obor hodnot - pouze tabulka zamestnanec ( ne zamestnani studenti) 29

30 Dědičnost funkcí Dědičnost chování - UDF dána argumenty funkce Př.: CREATE FUNCTION vyssi_plat (t_zamestnanec arg1) Returns BOOLEAN AS SELECT arg1.plat > (SELECT plat FROM zamestnanec WHERE jmeno = B ) Manipulace SELECT z.jmeno FROM ONLY ( zamestnanec ) z WHERE vyssi_plat (z) SELECT z.jmeno FROM zamestnanec z WHERE vyssi_plat (z)..pokud není žádná funkce definována pro zamestnany_student, pak dědi tuto funkci 30

31 Pravidla Událost podmínka akce = při výskytu události a splnění podmínky je akce vykonána Pravidla: Aktualizace - aktualizace Dotaz - aktualizace Aktualizace - dotaz Dotaz - dotaz CREATE RULE Výhody Objektově relační model znovupoužívání a sdílení vyplývá ze schopnosti rozšířit DBMS server k vykonání funkcionality centrálně ( př. prostorové datové typy(spatial data) - body, přímky, polygony a s tím spojené funkce - výpočet vzdáleností, určení zda ječástí, překrývání, částí polygonů) umístění na serveru a možnost sdílení funkcionality ve všech aplikacích využití RDBM není tak drahé a nepřístupné, je ověřené evoluční vývoj bez ztráty užitku původního Nevýhody - vyčítáno puristy z obou stran - málo objektovosti, odklon od RDBM 31

Databáze I. Přednáška 7

Databáze I. Přednáška 7 Databáze I Přednáška 7 Objektové rozšíření SQL Objektově relační databáze SQL:1999 objektové rozšíření SQL vztahuje se k objektově relačním databázovým systémům ukládají objekty do relační databáze umožňují

Více

Objektově relační databáze a ORACLE 8

Objektově relační databáze a ORACLE 8 Objektově relační databáze a ORACLE 8 Ludmila Kalužová VŠB - TU Ostrava, Ekonomická fakulta, Katedra informatiky v ekonomice, Sokolská 33, 701 21 Ostrava 1 Abstrakt V současné době existuje velký počet

Více

12. Postrelační databázové systémy

12. Postrelační databázové systémy 12. Postrelační databázové systémy 12.1. Nové oblasti aplikací databázových technologií... 2 12.2. Objektově-orientované databáze... 5 12.3. Objektově-relační databáze... 12 12.4. Další typy databází a

Více

12. Postrelační databázové systémy

12. Postrelační databázové systémy 12. Postrelační databázové systémy 12.1. Nové oblasti aplikací databázových technologií... 2 12.2. Objektově-orientované databáze... 5 12.3. Objektově-relační databáze... 12 12.4. Další typy databází a

Více

Primární klíč (Primary Key - PK) Je právě jedna množina atributů patřící jednomu z kandidátů primárního klíče.

Primární klíč (Primary Key - PK) Je právě jedna množina atributů patřící jednomu z kandidátů primárního klíče. Primární a cizí klíč Kandidát primárního klíče (KPK) Je taková množina atributů, která splňuje podmínky: Unikátnosti Minimálnosti (neredukovatelnosti) Primární klíč (Primary Key - PK) Je právě jedna množina

Více

Objektově orientované databáze. Miroslav Beneš

Objektově orientované databáze. Miroslav Beneš Objektově orientované databáze Miroslav Beneš Obsah přednášky Motivace Vlastnosti databázových systémů Logické datové modely Nevýhody modelů založených na záznamech Co potřebujeme modelovat? Identifikace

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

6 Objektově-orientovaný vývoj programového vybavení

6 Objektově-orientovaný vývoj programového vybavení 6 Objektově-orientovaný vývoj programového vybavení 6.1 Co značí objektově-orientovaný - organizace SW jako kolekce diskrétních objektů, které zahrnují jak data tak chování objekt: OMG: Objekt je věc (thing).

Více

Databáze 2013/2014. Konceptuální model DB. RNDr. David Hoksza, Ph.D.

Databáze 2013/2014. Konceptuální model DB. RNDr. David Hoksza, Ph.D. Databáze 2013/2014 Konceptuální model DB RNDr. David Hoksza, Ph.D. http://siret.cz/hoksza Osnova Organizace Stručný úvod do DB a DB modelování Konceptuální modelování Cvičení - ER modelování Náplň přednášky

Více

Dolování v objektových datech. Ivana Rudolfová

Dolování v objektových datech. Ivana Rudolfová Dolování v objektových datech Ivana Rudolfová Relační databáze - nevýhody První normální forma neumožňuje vyjádřit vztahy A je podtypem B nebo vytvořit struktury typu pole nebo množiny SQL omezení omezený

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

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

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

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

7.3 Diagramy tříd - základy

7.3 Diagramy tříd - základy 7.3 Diagramy tříd - základy - popisuje typy objektů a statické vztahy mezi nimi Objednávka -datumpřijetí -předplacena -číslo -cena +vyřiď() +uzavři() {if Objednávka.zákazník.charakteristika = 'nejistý'

Více

Databázové systémy. Datová integrita + základy relační algebry. 4.přednáška

Databázové systémy. Datová integrita + základy relační algebry. 4.přednáška Databázové systémy Datová integrita + základy relační algebry 4.přednáška Datová integrita Datová integrita = popisuje pravidla, pomocí nichž hotový db. systém zajistí, že skutečná fyzická data v něm uložená

Více

7.3 Diagramy tříd - základy

7.3 Diagramy tříd - základy 7.3 Diagramy tříd - základy - popisuje typy objektů a statické vztahy mezi nimi Objednávka -datumpřijetí -předplacena -číslo -cena +vyřiď() +uzavři() {if Objednávka.zákazník.charakteristika = 'nejistý'

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

Geografické informační systémy p. 1

Geografické informační systémy p. 1 Geografické informační systémy Slajdy pro předmět GIS Martin Hrubý hrubym @ fit.vutbr.cz Vysoké učení technické v Brně Fakulta informačních technologií, Božetěchova 2, 61266 Brno akademický rok 2004/05

Více

Obsah přednášky. Databázové systémy RDBMS. Fáze návrhu RDBMS. Coddových 12 pravidel. Coddových 12 pravidel

Obsah přednášky. Databázové systémy RDBMS. Fáze návrhu RDBMS. Coddových 12 pravidel. Coddových 12 pravidel Obsah přednášky Databázové systémy Konceptuální model databáze Codd a návrh relační databáze fáze návrhu pojem konceptuální model základní pojmy entity, relace, atributy, IO kardinalita, 2 historie: RDBMS

Více

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda 1. Lze vždy z tzv. instanční třídy vytvořit objekt? 2. Co je nejčastější příčinou vzniku chyb? A. Specifikace B. Testování C. Návrh D. Analýza E. Kódování 3. Je defenzivní programování technikou skrývání

Více

KMA/PDB. Karel Janečka. Tvorba materiálů byla podpořena z prostředků projektu FRVŠ č. F0584/2011/F1d

KMA/PDB. Karel Janečka. Tvorba materiálů byla podpořena z prostředků projektu FRVŠ č. F0584/2011/F1d KMA/PDB Prostorové databáze Karel Janečka Tvorba materiálů byla podpořena z prostředků projektu FRVŠ č. F0584/2011/F1d Sylabus předmětu KMA/PDB Úvodní přednáška Základní terminologie Motivace rozdíl klasické

Více

Diagramy tříd - základy

Diagramy tříd - základy Diagramy tříd - základy - popisuje typy objektů a statické vztahy mezi nimi Objednávka Zákazník -datumpřijetí -předplacena -číslo -cena +vyřiď() +uzavři() {if Objednávka.zákazník.charakteristika = 'nejistý'

Více

Nerelační databázové modely. Helena Palovská

Nerelační databázové modely. Helena Palovská Nerelační databázové modely Helena Palovská palovska@vse.cz Různé modely pro databázovou strukturu databázové modely 1960 SŘBD hierarchický, síťový relační 1970 1980 hierarchické, síťové relační objektový

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í 8 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování Entita Entitní typ

Více

Databázové systémy Cvičení 5.2

Databázové systémy Cvičení 5.2 Databázové systémy Cvičení 5.2 SQL jako jazyk pro definici dat Detaily zápisu integritních omezení tabulek Integritní omezení tabulek kromě integritních omezení sloupců lze zadat integritní omezení jako

Více

Oracle XML DB. Tomáš Nykodým

Oracle XML DB. Tomáš Nykodým Oracle XML DB Tomáš Nykodým xnykodym@fi.muni.cz Osnova Oracle XML DB Architektura Oracle XML DB Hlavní rysy Oracle XML DB Hlavní rysy Oracle XML DB - pokračování XMLType XML Repository Využívání databázových

Více

Objektové a objektově relační databázové stroje. J. Pokorný M. Valenta

Objektové a objektově relační databázové stroje. J. Pokorný M. Valenta Objektové a objektově relační databázové stroje J. Pokorný M. Valenta Obsah 1. Úvod - proč více databázových technologií 2. Objektově orientované databáze (ODMG 93) 3. Objektově relační databáze 3.1 Rozšiřitelnost,

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í Fakulta informačních technologií České vysoké učení technické v Praze c Michal Valenta, 2016 BI-DBS, LS 2015/16 https://edux.fit.cvut.cz/courses/bi-dbs/

Více

Databáze I. Přednáška 4

Databáze I. Přednáška 4 Databáze I Přednáška 4 Definice dat v SQL Definice tabulek CREATE TABLE jméno_tab (jm_atributu typ [integr. omez.], jm_atributu typ [integr. omez.], ); integritní omezení lze dodefinovat později Definice

Více

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal Databázové systémy - SQL * definice dat * aktualizace * pohledy Tomáš Skopal Osnova přednášky definice dat definice (schémat) tabulek a integritních omezení CREATE TABLE změna definice schématu ALTER TABLE

Více

DATABÁZOVÉ SYSTÉMY. Metodický list č. 1

DATABÁZOVÉ SYSTÉMY. Metodický list č. 1 Metodický list č. 1 Cíl: Cílem předmětu je získat přehled o možnostech a principech databázového zpracování, získat v tomto směru znalosti potřebné pro informačního manažera. Databázové systémy, databázové

Více

Základy objektové orientace I. Únor 2010

Základy objektové orientace I. Únor 2010 Seminář Java Základy objektové orientace I Radek Kočí Fakulta informačních technologií VUT Únor 2010 Radek Kočí Seminář Java Základy OO (1) 1/ 20 Téma přednášky Charakteristika objektově orientovaných

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

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

7.5 Diagram tříd pokročilé techniky

7.5 Diagram tříd pokročilé techniky 7.5 Diagram tříd pokročilé techniky Stereotypy - jeden ze základních prostředků rozšiřitelnosti UML - pro modelovací konstrukce neexistující v UML, ale podobné předdefinované v UML definované uživatelem

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

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

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

OBJECT DEFINITION LANGUAGE. Jonáš Klimeš NDBI001 Dotazovací Jazyky I 2013

OBJECT DEFINITION LANGUAGE. Jonáš Klimeš NDBI001 Dotazovací Jazyky I 2013 OBJECT DEFINITION LANGUAGE Jonáš Klimeš NDBI001 Dotazovací Jazyky I 2013 ODL a OQL ODL Objektové Object Definition Language popis objektového schéma SQL DDL Relační Data Definition Language příkazy CREATE,

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký Tvorba informačních systémů 1/35 Konceptuální

Více

Transformace konceptuálního modelu na relační

Transformace konceptuálního modelu na relační Transformace konceptuálního modelu na relační Michal Valenta Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze c Michal Valenta, 2016 BI-DBS, LS 2015/16

Více

Objektově relační databáze

Objektově relační databáze Objektově relační databáze Jaroslav Pokorný, Michal Valenta FEL ČVUT J. Pokorný, M. Valenta 1 Obsah 1. Úvod - proč více databázových technologií 2. Objektově orientované databáze (ODMG 93) 3. Objektově

Více

InterSystems Caché Post-Relational Database

InterSystems Caché Post-Relational Database InterSystems Caché Post-Relational Database Martin Holoubek xholoub@fi.muni.cz Úvod InterSystems byla založena shodou okolností ve stejném roce jako její největší konkurent Oracle 1978 Caché je velmi vyspělý

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

Kapitola 1: Úvod. Systém pro správu databáze (Database Management Systém DBMS) Účel databázových systémů

Kapitola 1: Úvod. Systém pro správu databáze (Database Management Systém DBMS) Účel databázových systémů - 1.1 - Kapitola 1: Úvod Účel databázových systémů Pohled na data Modely dat Jazyk pro definici dat (Data Definition Language; DDL) Jazyk pro manipulaci s daty (Data Manipulation Language; DML) Správa

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2005 2008 Michal Krátký Tvorba informačních systémů 1/39 Konceptuální

Více

Analýza a modelování dat. Přednáška 5

Analýza a modelování dat. Přednáška 5 Analýza a modelování dat Přednáška 5 Objektově orientované databáze Relační databáze data uložena v logicky provázaných tabulkách přes cizí klíče výhoda jednoduchost, intuitivnost, naplnění myšlenky oddělení

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

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7 Pascal Katedra aplikované kybernetiky Ing. Miroslav Vavroušek Verze 7 Proměnné Proměnná uchovává nějakou informaci potřebnou pro práci programu. Má ve svém oboru platnosti unikátní jméno. (Připadne, musí

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

Obsah. Úvod 11 Základy programování 11 Objektový přístup 11 Procvičování 11 Zvláštní odstavce 12 Zpětná vazba od čtenářů 12 Errata 13

Obsah. Úvod 11 Základy programování 11 Objektový přístup 11 Procvičování 11 Zvláštní odstavce 12 Zpětná vazba od čtenářů 12 Errata 13 Úvod 11 Základy programování 11 Objektový přístup 11 Procvičování 11 Zvláštní odstavce 12 Zpětná vazba od čtenářů 12 Errata 13 KAPITOLA 1 Na úvod o Javě 15 Počítačový program 15 Vysokoúrovňový programovací

Více

GEOGRAFICKÉ INFORMAČNÍ SYSTÉMY 4

GEOGRAFICKÉ INFORMAČNÍ SYSTÉMY 4 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY GEOGRAFICKÉ INFORMAČNÍ SYSTÉMY 4 Lubomír Vašek Zlín 2013 Tento studijní materiál vznikl za finanční podpory Evropského sociálního fondu (ESF)

Více

7.5 Diagram tříd pokročilé techniky

7.5 Diagram tříd pokročilé techniky 7.5 Diagram tříd pokročilé techniky Stereotypy - jeden ze základních prostředků rozšiřitelnosti UML - pro modelovací konstrukce neexistující v UML, ale podobné předdefinované v UML definované uživatelem

Více

Úvod do databázových systémů. Ing. Jan Šudřich

Úvod do databázových systémů. Ing. Jan Šudřich Ing. Jan Šudřich jan.sudrich@mail.vsfs.cz 1. Cíl předmětu: Úvod do databázových systémů Poskytnutí informací o vývoji databázových systémů Seznámení s nejčastějšími databázovými systémy Vysvětlení používaných

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

Databáze. Logický model DB. David Hoksza

Databáze. Logický model DB. David Hoksza Databáze Logický model DB David Hoksza http://siret.cz/hoksza Osnova Relační model dat Převod konceptuálního schématu do logického Funkční závislosti Normalizace schématu Cvičení převod do relačního modelu

Více

Objekty, třídy, vazby 2006 UOMO 30

Objekty, třídy, vazby 2006 UOMO 30 Objekty, třídy, vazby 2006 UOMO 30 Osnova Vymezení pojmu objekt Objekt a základní objektové koncepty Třídy, třída vs. objekt Vztahy mezi objekty, vazby mezi třídami Polymorfismus 2006 UOMO 31 Vymezení

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

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

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

PB161 Programování v jazyce C++ Přednáška 7

PB161 Programování v jazyce C++ Přednáška 7 PB161 Programování v jazyce C++ Přednáška 7 Statické položky tříd Základy OOP Nikola Beneš 6. listopadu 2018 PB161 přednáška 7: static, základy OOP 6. listopadu 2018 1 / 21 Klíčové slovo static Znáte z

Více

Databáze I. 5. přednáška. Helena Palovská

Databáze I. 5. přednáška. Helena Palovská Databáze I 5. přednáška Helena Palovská palovska@vse.cz SQL jazyk definice dat - - DDL (data definition language) Základní databáze, schemata, tabulky, indexy, constraints, views DATA Databáze/schéma

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

1. Dědičnost a polymorfismus

1. Dědičnost a polymorfismus 1. Dědičnost a polymorfismus Cíl látky Cílem této kapitoly je představit klíčové pojmy dědičnosti a polymorfismu. Předtím však je nutné se seznámit se základními pojmy zobecnění neboli generalizace. Komentář

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

PB161 Programování v jazyce C++ Přednáška 7

PB161 Programování v jazyce C++ Přednáška 7 PB161 Programování v jazyce C++ Přednáška 7 Statické položky tříd Základy OOP Nikola Beneš 6. listopadu 2018 PB161 přednáška 7: static, základy OOP 6. listopadu 2018 1 / 21 Klíčové slovo static Znáte z

Více

Základy informatiky. 08 Databázové systémy. Daniela Szturcová

Základy informatiky. 08 Databázové systémy. Daniela Szturcová Základy informatiky 08 Databázové systémy Daniela Szturcová Problém zpracování dat Důvodem je potřeba zpracovat velké množství dat - evidovat údaje o nějaké skutečnosti. o skupině lidí (zaměstnanců, studentů,

Více

O Apache Derby detailněji. Hynek Mlnařík

O Apache Derby detailněji. Hynek Mlnařík O Apache Derby detailněji Hynek Mlnařík Agenda Historie Vlastnosti Architektura Budoucnost Historie 1997 Cloudscape Inc. - JBMS 1999 Informix Software, Inc. odkoupila Cloudscape, Inc. 2001 IBM odkoupila

Více

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

Úvod do databázových systémů. Lekce 1 Úvod do databázových systémů Lekce 1 Sylabus Základní pojmy DBS Životní cyklus DB, normalizace dat Modelování DBS, ER diagram Logická úroveň modelu, relační model Relační algebra a relační kalkul Funkční

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

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

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

Michal Krátký. Tvorba informačních systémů, 2008/2009. Katedra informatiky VŠB Technická univerzita Ostrava. Tvorba informačních systémů

Michal Krátký. Tvorba informačních systémů, 2008/2009. Katedra informatiky VŠB Technická univerzita Ostrava. Tvorba informačních systémů Tvorba informačních systémů 1/40 Tvorba informačních systémů Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009 Tvorba informačních systémů 2/40 Úvod

Více

Programování II. Třídy a objekty (objektová orientovanost) 2018/19

Programování II. Třídy a objekty (objektová orientovanost) 2018/19 Programování II Třídy a objekty (objektová orientovanost) 2018/19 Osnova přednášky Objektový přístup (proč potřebujeme objekty). Třídy, objekty,... Příklad. Proč potřebujeme objekty? Udržovatelnost softwaru

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

Vysoká škola ekonomická v Praze

Vysoká škola ekonomická v Praze Vysoká škola ekonomická v Praze Fakulta informatiky a statistiky Katedra informačních technologií Student Vedoucí bakalářské práce Recenzent bakalářské práce : Ondřej Novák : RNDr. Helena Palovská, PhD.

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 2. přednáška. Helena Palovská

Analýza a modelování dat 2. přednáška. Helena Palovská Analýza a modelování dat 2. přednáška Helena Palovská Databázové modely Způsoby logické organizace dat hierarchický síťový relační objektový (objektově-relační) multidimenzionální Historie databázových

Více

DUM 12 téma: Příkazy pro tvorbu databáze

DUM 12 téma: Příkazy pro tvorbu databáze DUM 12 téma: Příkazy pro tvorbu databáze ze sady: 3 tematický okruh sady: III. Databáze ze šablony: 7 Kancelářský software určeno pro: 4. ročník vzdělávací obor: 18-20-M/01 Informační technologie vzdělávací

Více

Konceptuální datové modely používané při analýze

Konceptuální datové modely používané při analýze Konceptuální datové modely používané při analýze Abstraktní datové typy jako definice domén atributů ADT (Abstraktní datový typ) zapouzdření datového typu lidský mozek je schopen řešit úlohy jen do určité

Více

Jazyk PL/SQL Úvod, blok

Jazyk PL/SQL Úvod, blok Jazyk PL/SQL Úvod, blok 1 Bc. Tomáš Romanovský Procedural Language for Structured Query Language Součást systému Oracle, rozšíření SQL o procedurální rysy Prostředky pro vytváření a spouštění programových

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

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka Metody tvorby ontologií a sémantický web Martin Malčík, Rostislav Miarka Obsah Reprezentace znalostí Ontologie a sémantický web Tvorba ontologií Hierarchie znalostí (D.R.Tobin) Data jakékoliv znakové řetězce

Více

Úvod do GIS. Atributy a jejich vztah k prostoru. Pouze podkladová prezentace k přednáškám, nejedná se o studijní materiál pro samostatné studium.

Úvod do GIS. Atributy a jejich vztah k prostoru. Pouze podkladová prezentace k přednáškám, nejedná se o studijní materiál pro samostatné studium. Úvod do GIS Atributy a jejich vztah k prostoru Pouze podkladová prezentace k přednáškám, nejedná se o studijní materiál pro samostatné studium. Karel Jedlička Atributy a jejich vztah k prostoru Atributová

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

2 Konceptuální modelování a návrh databáze

2 Konceptuální modelování a návrh databáze 2 Konceptuální modelování a návrh databáze 2.1. Úloha konceptuálního modelování v procesu návrhu databáze... 2 2.2. E - R modely... 6 2.3. Doporučení pro modelování a tvorbu ER diagramu... 22 2.4. Transformace

Více

Michal Krátký, Miroslav Beneš

Michal Krátký, Miroslav Beneš Databázové a informační systémy Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava 5.12.2005 2005 Michal Krátký, Miroslav Beneš Databázové a informační systémy 1/24 Obsah

Více

UML. Unified Modeling Language. Součásti UML

UML. Unified Modeling Language. Součásti UML UML Unified Modeling Language 1995 počátek 1997 verze 1.0 leden dnes verze 2.0 (vývoj stále nedokončen) Standardní notace OMG podpora velkých firem (Microsoft, IBM, Oracle, HP ) popisuje struktury popisuje

Více

2 Konceptuální modelování a návrh databáze

2 Konceptuální modelování a návrh databáze 2 Konceptuální modelování a návrh databáze 2.. Úloha konceptuálního modelování v procesu návrhu databáze... 2 2.2. E - R modely... 6 2.3. Doporučení pro modelování a tvorbu ER diagramu... 22 2.4. Transformace

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

Ú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í 3 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování 4 fáze vytváření

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

8 Třídy, objekty, metody, předávání argumentů metod

8 Třídy, objekty, metody, předávání argumentů metod 8 Třídy, objekty, metody, předávání argumentů metod Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost třídám a objektům, instančním

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

Databázové systémy. * relační kalkuly. Tomáš Skopal. - relační model

Databázové systémy. * relační kalkuly. Tomáš Skopal. - relační model Databázové systémy Tomáš Skopal - relační model * relační kalkuly Osnova přednášky relační kalkuly doménový n-ticový Relační kalkuly využití aparátu predikátové logiky 1. řádu pro dotazování rozšíření

Více

Objektově orientovaný přístup

Objektově orientovaný přístup Objektově orientovaný přístup 1 Historie programovacích jazyků 1945: John von Neumann článek o nové metodě pro ukládání programů 1945: Grace Hopper poprvé termín "bug" 1946: Konrad Zuse Plankalkul - první

Více

Základy informatiky. 06 Databázové systémy. Kačmařík/Szturcová/Děrgel/Rapant

Základy informatiky. 06 Databázové systémy. Kačmařík/Szturcová/Děrgel/Rapant Základy informatiky 06 Databázové systémy Kačmařík/Szturcová/Děrgel/Rapant Problém zpracování dat důvodem je potřeba zpracovat velké množství dat, evidovat údaje o nějaké skutečnosti: o skupině lidí (zaměstnanců,

Více