Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
David Hartinger
Vlastník
Avatar
David Hartinger:20.2.2013 14:12

Jaký je prosím rozdíl mezi hierarchickým (tím z 60. let) a relačním databázovým modelem? Oba mají cizí klíče, oba mají tabulky. Ví někdo? :)

Editováno 20.2.2013 14:12
Odpovědět
20.2.2013 14:12
You are the greatest project you will ever work on.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:20.2.2013 14:32

Hierarchický databázový model nemá ani tabulky, ani cizí klíče. Možná sis to spletl s reprezentací na relačních databázích.

Nahoru Odpovědět
20.2.2013 14:32
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:20.2.2013 14:34

Vycházím z toho co jsem našel na wiki: http://en.wikipedia.org/…tabase_model

Je mi jasné, že je to fyzicky uloženo jinak, ale mají to tam jako tabulky a funguje tam i cizí klíč jako u relačních.

Nahoru Odpovědět
20.2.2013 14:34
You are the greatest project you will ever work on.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:20.2.2013 14:38

Cite: "Examples of hierarchical data represented as relational tables"

Hierarchickou databází je například DOM. Cizí klíče nemá a nemá ani tabulky.

Nahoru Odpovědět
20.2.2013 14:38
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:20.2.2013 14:44

Aha, moje chyba :) Jak funguje DOM vím, jen mi je tedy ještě neznámé, jakým způsobem vytvořím relaci, např. budu mít rodiče auta a rodiče řidiči a budu chtít každému autu přiřadit nějakého řidiče. To musí být řidič syn auta nebo to funguje nějak jinak?

Nahoru Odpovědět
20.2.2013 14:44
You are the greatest project you will ever work on.
Avatar
tony
Neregistrovaný
Avatar
tony:20.2.2013 14:51

Jasne ale jak presne vypada uloženi.. jde o to že ja ted mam psat bakalarku kde mam udelat sitovy a hierarchicky model pro dnesni problematiku..

takze vim jak mam modelovat relačni model.. proste v enterprice architektu udelam klasicky tabulky atd... ALE JAK BUDE VYPADAT MODELOVNI pro hierarchicky a sitovy model???

připadne jak bude teda uloženo kdyz ne do tabulek...

napadlo me XML priklad

<TATA jmeno="", prijmeni="", telefon="">
<DCERA jmeno=""></>
<DICERA jmeno=""></>
</>

ale je to vubec tak?

 
Nahoru Odpovědět
20.2.2013 14:51
Avatar
tony
Neregistrovaný
Avatar
Odpovídá na
tony:20.2.2013 14:56

připadně pokud ano muzeme data v hierarchickem modelu ukladat jako xml... (tak jak bude vypadat uloženi v sitovem??) tam uz neplati to ze jeden potomek muze mit jen jednoho rodice.. to xml nepujde.

 
Nahoru Odpovědět
20.2.2013 14:56
Avatar
Kit
Tvůrce
Avatar
Odpovídá na
Kit:20.2.2013 15:27

XML je vlastně jen serializovaná hierarchická databáze. Fyzicky bývá nejčastěji implementována jako seznam, položky seznamu jsou na hromadě.

Pomocí dynamicky vázaných struktur se dá udělat i síťová databáze. Potomek pak může mít víc rodičů. U takových databází se však rodiče většinou nehledají nebo potomci vedou své rodiče jako další potomky.

Nahoru Odpovědět
20.2.2013 15:27
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:20.2.2013 15:29

Když budeš mít adresářovou strukturu, jak do ní vložíš auta a jak řidiče? A jak v ní vyjádříš, kteří řidiči řídí která auta?

Nahoru Odpovědět
20.2.2013 15:29
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:20.2.2013 15:41

Zadám cestu :)

Nahoru Odpovědět
20.2.2013 15:41
You are the greatest project you will ever work on.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:20.2.2013 16:10

Asi budeš mít v kořeni seznam aut jako adresáře. V každém adresáři budeš mít řidiče příslušného auta.

Z tohoto příkladu je vidět, že zrovna na tohle se hierarchická databáze nehodí. Naopak se výborně hodí třeba na myšlenkové mapy, na kterých relační databáze selhávají.

Nahoru Odpovědět
20.2.2013 16:10
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:20.2.2013 16:53

Super, díky! :)

Nahoru Odpovědět
20.2.2013 16:53
You are the greatest project you will ever work on.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:20.2.2013 17:05

Ještě mě napadlo, že když v OOP děláš kompozici, vytváříš vlastně hierarchickou databázi v paměti. Samozřejmě se v OOP dá udělat i síťová, ale relační se dělá dost blbě. Proto jsou takové potíže s ORM frameworky.

Nahoru Odpovědět
20.2.2013 17:05
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 13 zpráv z 13.