Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 21. 10. 2014 20:12

Gooorila
Příspěvky: 33
Reputace:   
 

Databázové systémy - vztahy mezi entitami. Jak se správně ptát?

Dobrý den

Pomocí těchto stránek a fora jsem si dodělal na stará kolena matematiku a dokonce si dovolil ji vybrat dobrovolně jako maturitní předmět. Nyní pokračuji ještě dále a i když jsem matematiku měl v prvním a druhém semestru, nějak záhadně jsem je udělal.

Nyní bojuji s Pascalem a Databázemi. V pascalu jsem úplně marný a tak ani nemá smysl podávat dotaz, ale k těm databázím:

Zatím jen začínám, ale měli jsme si navrhnout vlastní návrh databáze, kterou budeme řešit. Fajn, dal jsem si účetní systém, který nyní řeším excelem a když mám ty školy ... :o).

OK, Atributy, entity, tabulky, to mi ještě trochu smysl dává. Navrhl jsem si tedy pět tabulek a nyní mezi nimi mám naznačit grafický vztah a pak budu řešit kardinalitu. Vůbec nechápu, jak ale řešit ty vztahy, ale ve skriptech a na internetu jsem našel k tomuto tak málo, že to asi bude něco jednoduššího, než si myslím a hledám v tom nějaké zakomané psy (on možná i ten můj dotaz nedává nějak dvakrát smysl :o).

Jakým způsobem se ptát na vztahy mezi entitami? Možná by mi stačil i nějakýpříklad, protože skripta mají jen, že "učitel učí předměty", což neumím přetransformovat na moje tabulky Zakázka, Investor, Dodavatel, Investice a materiál.

Offline

 

#2 24. 10. 2014 15:58

r2d2
Příspěvky: 151
Reputace:   
 

Re: Databázové systémy - vztahy mezi entitami. Jak se správně ptát?

Tvůj dotaz je pár dní starý. Tak nevím zda je je pořád aktuální.

Vezměme si napřed příklad "učitel učí předměty" a tyto dvě entity a vztah mezi nima. Vztah je znázorněn čárou mezi entitami: Učitel - Předmět. Teď zbývá doplnit kardinality.

Jak na to. Otázky, které mi vždy pomohli:
1) kolik předmětů může učit učitel?
2) kolik učitelů může učit jeden konkrétní předmět?

Dle mého:

1) Učitel může učit n předmětů - znamená, že učitel může učit předmětů 0, 1 nebo více předmětů. Zápis: n.
2) Jeden předmět může učit jeden i více učitelů; musíme ale brát v potaz, že předmět nikdo neučí a tudíž není vyuřčován. Zápis je zase n

Nenapsal jsi jestli se jedná o ER model nebo UML. Konkrétní zápis vztahů si musíš dohledat na internetu.

Teď k tvým entitám:

# Dodavatel "má" Zakázky: 1 - n. (Může však také být, že zakázka zatím není nikomu přidělená a nikdy jí nikdo nedostane. Tudíž by se jednalo ovztah n-n) Podle mě je obojí správně,
# Investor "poskytl" Investici: To by mohle být tak, že jeden insvestor může poskytnout n investic.
# Investice "slouží na" Zakázky. Na jednu nebo více ( zase záleží trochu na tobě). Tímto se dotsaneš do stavu, kde Investor "poksytuje" Investice "na" Zakázky "pro" Dodavatele.

Materiál zkus sám. Popřípadě zkus najít další vztahy. A nezapomeň, že materiál může být v relaci s více entitami.

Pamatuj, že se jedná o návrh DB schématu a to musí jak zohledňovat realitu, tak v neposlední řadě, dobře posloužit účelu. Resp. DB by měla být ušitá na míru aplikaci; tomu jak aplikace bude DB používat a jaké na ni bude klást nároky (viz. integritní omezení).

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson