Diskuze: Databázové tabulky
V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 5 zpráv z 5.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.
Skus si nastudovat pojmy ako relacna databaza a normalizacia, mali by ti pomoct v tebou uvadzanom probleme.
Priklad:
Tabulka Clovek: ID, meno, kontakt
Tabulka Firma: ID, nazov, sidlo
Asociacna tabulka PracovnyPomer, kde je vztah Clovek:Firma M:N: ID cloveka, ID
firmy, pociatocny datum, konecny datum, typ pracovneho pomeru
zbuchal som to len tak z hlavy za par minut ako priklad. Zalezi od zadania a poziadaviek, ako si DB navrhnes
To já chápu, spíš mi jde o to, jak to nejlépe řešit. Jde o to, že každý může mít jiný počet různých zaměstnání. Můžu udělat nějakou profesi, ale 100 lidi bude mít 100 různých variant, protože se to bude lišit délkou. A právě tyto věci chci mít v administraci v jednom formuláři a právě do zaměstnání se bude volit že selectu, kam by se nacitaly hodnoty z tabulky zaměstnání. Jenže takových tam bude nespočet a většinou každou vyuziju jen jednou a potom tam bude navíc..
Je elegantní řešení mít na zaměstnání v db jednu buňku u každého, a tam se bude vyplňovat dejme tomu kód s <td> a <tr> s tím, že budou dané sloupce ale počet řádku bude neomezený. V administraci to pak bude vypadat jako tabulka s hlavičkou a jednotlivé buňky budou inputy a ty se pak už ve skriptu obalí tagy tr a td a potom bude na webu snadný výpis v tabulce.
Je třeba vzít v úvahu, že každá tabulka ( a třída) by se měla "starat" jen o jednu oblast. Takže si udělej tabulky např. Lidi, Firmy, Školy v podstatě jakoby číselníky a k tomu vazební tabulky, které budou spojovat záznamy v těch číselnících...
Takto nějak jsem už řešil snazší problém, teď jsem si říkal, jestli neexistuje náhodou něco lepšího, ale asi nejlepší bude věci po tabulkách a ta jakoby celková bude jen plná ID čísel do jiných tabulek
Zobrazeno 5 zpráv z 5.