MySQL Workbench EER diagram – MySQL – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

MySQL Workbench EER diagram – MySQL – Fórum – Programujte.comMySQL Workbench EER diagram – MySQL – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
ondrej39+1
Věrný člen
27. 2. 2015   #1
-
0
-

Ahoj, je zde někdo, kdo pracuje v MySQL Workbench a rozumí ER diagramům, které daná aplikace generuje? Ve škole jsme používali jinou anotaci a nevím, zda je generovaný EER diagram správný.

Popis problému:

Tým se může, ale nemusí, zůčastnit nějakého zápasů (tj. můžeme evidovat tým, který zatím nemá odehraný žádný zápas). Tým může, ale nemusí, mít nějaké hráče. Tým může, ale nemusí, mít hráče, kteří v týmu hráli, ale již nehrají (tj. tento vztah nebude existovat, když všichni evidovaní hráči stále v týmu hrají a nikdo z nich nevystoupil).

Oproti tomu, když se hraje zápas, tak daný zápas musí evidovat, kdo hraje jako host a kdo hraje jako domácí. Atribut výsledek je navázán na tým(id_tymu), ale může zůstat NULL v případě, že zápas skončí remízou.

V daném zápase určitě musejí hrát někteří hráči, ale naopak můžeme v databázi evidovat hráče, který zatím žádný zápas neodehrál .

Hráč může, ale nemusí, hrát v nějakém týmu, navíc může, ale nemusí, mít evidováno, že již někde hrál dříve.

EER diagram:

Připojen obrázek.

Nahlásit jako SPAM
IP: 46.39.172.–
Inject all the dependencies!
peter
~ Anonymní uživatel
4014 příspěvků
17. 3. 2015   #2
-
0
-

EER diagram zni odborne. Ve skutecnosti je to propojeni tabulek pro databazi nebo predavani informaci.

"Tým se může, ale nemusí, zůčastnit nějakého zápasů"
tabulka tym - id, jmeno, seznam hracu
tabulka zapasy - id, tym1, tym2, vysledek

"evidovat tým, který zatím nemá odehraný žádný zápas"
- to je zalezitost sql dotazu

"Tým může, ale nemusí, mít nějaké hráče"
tabulka hrac - id, jmeno
tabulka tym - id_tym, nazev
tabulka spoj_hrac_tym - id_hrac, id_tym

"Tým může, ale nemusí, mít hráče, kteří v týmu hráli, ale již nehrají (tj. tento vztah nebude existovat, když všichni evidovaní hráči stále v týmu hrají a nikdo z nich nevystoupil)."
Tohle je zajimave. Normalne by se to ukladalo do logu. V jinem pripade by se dala udelat tabulka prestupu nebo tabulka vsech tymu, kde hrac hral. Cili, kdyz ho zapises do tabulky tymu, soucasne ho zapise do tabulky prestupy. V prestupy zustane informace na vecne casy, mozna navic informace o poradi, case, kdy prestoupil. Kdezto z tabulky tymy ho smazes pri odejiti z tymu.
tabulka prestupy - id_hrac, id_tym, cas
Nebo proste z tabulky tymy udelat tabulku prestupu a SELECTem pak vybirat posledni cas prestupu, nejak...

"Oproti tomu, když se hraje zápas, tak daný zápas musí evidovat, kdo hraje jako host a kdo hraje jako domácí. - Atribut výsledek je navázán na tým(id_tymu), ale může zůstat NULL v případě, že zápas skončí remízou."
tabulka zapasy - id_zapas, id_tym1, id_tym2, vitez_tym (NULL, tym1, tym2), id_tym_domaci

"V daném zápase určitě musejí hrát někteří hráči, ale naopak můžeme v databázi evidovat hráče, který zatím žádný zápas neodehrál ."
- To je zalezitost sql dotazu nebo to prilis nechapu. To je fotbal? Ze nejaky hrac sedi na lavicce? Nebo hraje cely tym?
Vypsat zapasy, ktere se jeste nekonali do urciteho casu a v nich zapsane hrace, to je sql dotaz. Jestli jde o toto.

"Hráč může, ale nemusí, hrát v nějakém týmu, navíc může, ale nemusí, mít evidováno, že již někde hrál dříve."
Tak to uz se psalo driv, ne?


Cili, vychazi mi 5 tabulek asi nejak takto:
tabulka hrac - id, jmeno (a dalsi informace o hraci)
tabulka tym - id_tym, nazev
tabulka spoj_hrac_tym - id_hrac, id_tym
tabulka prestupy - id_hrac, id_tym, cas
tabulka zapasy - id_zapas, id_tym1, id_tym2, vitez_tym (NULL, tym1, tym2), id_tym_domaci

Hrac - Ty mas u hrace navic aktivni a hraje. k cemu to pouzivas?
Zapas vicemene stejne. Ty sloupce, co tam mas, ty jsou asi treba. U pingpongu treba goly nemas, takze obecne bych to tam nedaval :)
Tym mas stejne.
Prestupy resis pres minule tymy.
Hrac_tym evidujes u hrace. Co kdyz bude ve vice tymech? Ze treba mas dve a vice soutezi a kazda ta soutez bude mit vlastni tymy. To je pak lepsi mit na spojeni tym-hrac vlastni tabulku.
Nejspis to mas dobre. Zadani v tomhle neni uplne. Neni receno, ze se jedna o fotbal a k cemu dane veci budes pouzivat. Zakaznik ti rekne odehrane zapasy, ale ty muzes ziskat sql dotazem z tabulek, ktere mas, treba a udelat mu z toho tabulku, kterou v db ale nemas. A nebo proste v te tabulce bude chtit neco jeste navic dopsat, pak ma smysl delat dalsi. A to je mozna presne ten pripad fotbalu nebo ceho se zadani tyka.

U WB by se mohlo dat zapnout, aby ti spojoval prislusny sloupec id s id v druhe tabulce, snad.

Nahlásit jako SPAM
IP: 2001:718:2601:1f7:b5ea:3c...–
ondrej39+1
Věrný člen
17. 3. 2015   #3
-
0
-

#2 peter
Dík za odpověď, zapomněl jsem téma označit jako vyřešené, vyřešil jsem problém asi den až dva dny poté, co jsem téma založil.

Nahlásit jako SPAM
IP: 195.113.207.–
Inject all the dependencies!
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 17 hostů

Podobná vlákna

Use Case Diagram — založil Vojta

Vývojový diagram — založil Kotysek

Vývojoví Diagram — založil MatějH

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý