Autor Zpráva
Adam16
Profil
Zdravím, chcem sa spýtať či neviete niekto ako spraviť aby bola jedná hlavná tabuľka a podľa nej sa riadili ostatné.

napríklad:

mám v hlavnej tabuľke číslo 1 tak ho mám aj v pod tabuľkách a keď v hlavnej tabuľke zmením číslo 1 na číslo 2 tak sa zmení vo všetkých pod tabuľkách ale nechcem aby bolo tak že keď v pod tabuľke zmením číslo 1 na číslo 2 tak v hlavnej bude stále 1.

nejaké nápady ? vopred ďakujem :)
juriad
Profil
Nejspíš se snažíš znásilnit databázi k něčemu, k čemu není určená.
Každou informaci bys měl mít uloženou na právě jednom místě.

Možná se ale snažíš o něco jako: v hlavní tabulce je výchozí hodnota a v tabulkách detailů je možné tuto hodnotu přebít.
Pak zase, hodnota bude uložená jen na jednom místě.
Tori
Profil
Možná trigger na insert do hlavní tabulky?
Jinak, jakým způsobem potom ta data čtete? Šlo by třeba ten sloupec v podřízené tabulce nechat NULLový, má-li se použít hodnota z hlavní tabulky, tzn SELECT IFNULL(child.col, parent.col) columnName.
Ale co když je takováhle situace: 1. v hlavní tabulce nastavíte nějaké číslo a to se nastaví i všem závislým tabulkám. 2. v závislé tabulce toto číslo změníte. 3. v hlavní tabulce opět změníte číslo - co teď bude v závislé tabulce? Má se opět hodnota přepsat tou z hlavní tabulky (= v takovém případě nevidím smysl ji vůbec v závislé tab. ukládat), anebo jakmile byla jednou pro závislou tabulku nastavená nějaká hodnota, tak už se nedá přepsat tou z hlavní tabulky (v tom případě NULLový sloupec + zmíněný select)?

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: