IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
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
Odpovídá na caca
Michal Štěpánek:27.6.2018 15:09

Tabulky se propojují pomocí cizích klíčů (FK - Foreign Key), které mohou být součástí té tabulky (při vazbě 1:N), nebo v tzv. vazební tabulce (při vazbě M:N)

Odpovědět
27.6.2018 15:09
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
caca
Člen
Avatar
caca:27.6.2018 15:44

OK dik s tim si uz nejak snad poradim, ale to ID je jen pole nebo musi byt nejak zakoreneno do tabulky?

 
Nahoru Odpovědět
27.6.2018 15:44
Avatar
Petr Langer
Člen
Avatar
Odpovídá na caca
Petr Langer:27.6.2018 16:29

Každá tabulka musí mít primární klíč (nejčastěji ID), který je v dané tabulce pro každý záznam unikátní. To znamená, že ID (ať už primární nebo cizí klíč) je v tabulce reprezentováno jako samostatný sloupec

 
Nahoru Odpovědět
27.6.2018 16:29
Avatar
Petr Langer
Člen
Avatar
Odpovídá na caca
Petr Langer:27.6.2018 16:43

Nějak takhle by ty tabulky mohly vypadat, všimni si hlavně těch klíčů, ostatní atributy jsem si vymyslel. Jsou tam 3 statistiky přičemž první dva záznamy patří Karlu Novákovi a třetí patří Janu Novotnému

 
Nahoru Odpovědět
27.6.2018 16:43
Avatar
caca
Člen
Avatar
caca:27.6.2018 19:06

super....a u tymu to udelat asi uplne stejne, i kdyz by bylo lepsi mit u players ne kolonku id_tym_fk ale uz spis jmeno klubu...nebo v selectu to nejak udelat aby misto ID to ukazovalo jmeno klubu?

 
Nahoru Odpovědět
27.6.2018 19:06
Avatar
Petr Langer
Člen
Avatar
Odpovídá na caca
Petr Langer:27.6.2018 20:26

Přesně, budeš mít samostatnou tabulku pro týmy a v tabulce Hráči budeš nějakej cizí klíč na ten tým, třeba to id_tym_fk. V selectu pak budeš muset spojit ty tabulky joinem podle těch cizích klíčů, to si zkus pogooglit a pak se kdyžtak doptej

 
Nahoru Odpovědět
27.6.2018 20:26
Avatar
Odpovídá na caca
Michal Štěpánek:28.6.2018 8:10

Když budeš místo ID, coby cizího klíče, dávat rovnou názvy, pak budeš muset při každé změně toho názvu najít všechny výskyty toho názvu a opravit je. Když použiješ ID, tak to bude pořád stejné, bez ohledu na různé změny v původní tabulce.
Ve View si pomocí JOINů v SELECTu normálně zobrazíš názvy, které potřebuješ. Při změnách se to automaticky promítne do těch View a změnu provádíš pouze na jednom místě.

Nahoru Odpovědět
28.6.2018 8:10
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
caca
Člen
Avatar
caca:3.7.2018 20:58

akorat me napadlo kdyz bude vlastne kazdy hrac mit ID....a pak se bude db aktualizovat a hrac treba s ID 2 bude vymazan protoze skoncil karieru...tak se ty ID asi premeni ne?

 
Nahoru Odpovědět
3.7.2018 20:58
Avatar
Odpovídá na caca
Michal Štěpánek:3.7.2018 22:07

Nic se měnit nebude, páč by sis tím rozhodil veškerou historii. Ten "ukončený" nebude vymazán, ale pouze deaktivován nějakým atributem v db. A i kdyby byl z nějakého důvodu vymazán, jeho ID už nikdy nebude použito...

Nahoru Odpovědět
3.7.2018 22:07
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
caca
Člen
Avatar
caca:6.7.2018 17:02

jeste bych mel otazecku do herni databaze ohledne jsem je dobre delat jmena jako treba Petr Novak jako jedno jmeno "name" nebo rozdeli do "first" Petr a "lastname" Novak?

Je to takovej detail budu rad za kazdou napovedu

 
Nahoru Odpovědět
6.7.2018 17:02
Avatar
Petr Čech
Tvůrce
Avatar
Odpovídá na caca
Petr Čech:6.7.2018 17:12

Typicky bys to rozdělil, nijak to nebolí a do budoucna si můžeš otevřít cestu třeba k tomu, že budeš posílat uživatelům mail, co je osloví křestním jménem.

Nahoru Odpovědět
6.7.2018 17:12
the cake is a lie
Avatar
caca
Člen
Avatar
caca:6.7.2018 19:20

ok, taky me napadlo kdyz budu mit treba v sloupci position (brankar, obrance, utocnik) aby to naslo jenom treba utocniky....

nebo kdyz si dam vyhledat jeden attribut aby mi to seradilo od nejvyssiho cisla po nejmensi

 
Nahoru Odpovědět
6.7.2018 19:20
Avatar
caca
Člen
Avatar
caca:10.7.2018 13:46

jak je tedy ten prikaz ? normalne dam select name atp..a From players ale jak vybrat jen brankere mi nejde do hlavy..

 
Nahoru Odpovědět
10.7.2018 13:46
Avatar
Petr Langer
Člen
Avatar
Odpovídá na caca
Petr Langer:10.7.2018 15:43

Jestli máš u hráče atribut s pozicí tak je to takhle

SELECT *
FROM players
WHERE position = 'goalkeeper'
 
Nahoru Odpovědět
10.7.2018 15:43
Avatar
Odpovídá na caca
Michal Štěpánek:11.7.2018 7:42

Možná bys měl zkusit alespoň nakouknout do základů SQL dotazů, protože toto je skutečně úplný základ SQL...

Nahoru Odpovědět
11.7.2018 7:42
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
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 15 zpráv z 65.