Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemZamknutoVyřešeno diskusne forum (so stromovou strukturou)

Chcel by som vytvorit diskusne forum so stromovou strukturou a zaujimala by ma len struktura databazy - napadla ma takato vec:
v databaza je
* zoznam tem (kazda ma svoje id)
* zoznam prispevkov (kazdy svoje id + id_p == id nadradeneho prispevku, ak nie je ziadny zadradeny tak to bude id temy)

cinnost:
* podla datumu vyberiem prvy prispevok s id_p prisluchajuci k danej teme
* podla datumu vyberiem prvy prispevok s id_p priskluchajuci k poslednemu prispevku
* rekurzia.....

Nie je tento pristup trosicku narocny na dotazy pre databazu? Pri 30 reakciach by sa jednalo asi o 31 dotazov (asi by zalezalo aj od formy zanorenia). (neviem ci je to vela alebo malo)

Předmět Autor Datum
Určitě ne. Třeba los by to měl vymyšlené do minuty.
Flash_Gordon 14.08.2007 13:51
Flash_Gordon
host ví o nějakém již hotovém na www.interval.cz je docela prima.
Kráťa 14.08.2007 14:20
Kráťa
Noo...vies...na intervale je toho vela a prvy clanok co som tam nasiel pouziva ten isty postup ako s…
D0ktor 14.08.2007 15:00
D0ktor
* zoznam prispevkov (kazdy svoje id + id_p == id nadradeneho prispevku, ak nie je ziadny zadradeny t…
Mitch 14.08.2007 17:26
Mitch
Mozno som to nenapisal celkom jednoznacne ale tento princip som raz pouzil na menu so stromovou stru…
D0ktor 14.08.2007 22:04
D0ktor
Určite nie ťahať dáta rekurzívne z databázy. Najjednoduchšie je vytiahnuť všetky riadky jedným selec…
los 14.08.2007 22:50
los
no ze som na to sam neprisiel:-D ...ale nie..vazne dik poslední
D0ktor 15.08.2007 18:00
D0ktor

* zoznam prispevkov (kazdy svoje id + id_p == id nadradeneho prispevku, ak nie je ziadny zadradeny tak to bude id temy)

Tady bych viděl konflikt. Konkrétně když budeš příspěvku bez rodiče přiřazovat id tématu... Dejme tomu že téma má id 30 a v tabulce s příspěvkama máš příspěvek taky s id 30. Jak poznáš jestli je příspěvek s id_p == 30 "potomkem" příspěvku nebo úplně nadřazený? Já osobně dávám příspěvkům, které némají rodiče id_p s hodnotou -1. Sice přijdeš o polovinu hodnot protože nemůže být id_p unsigned ale můžeš to kompenzovat tak že bude prostě integer o jeden bit delší.

/* EDIT: tak tohle platí jen pokud je jedno téma:-/ Při více témat asi bude nutný mít zlášť sloupec pro téma a zvlášť pro rodičovský příspěvek (no to zní fakt blbě:-) )

Mozno som to nenapisal celkom jednoznacne ale tento princip som raz pouzil na menu so stromovou strukturou (polozky menu ulozene v MySQL nasledne generovane pomocou JS) a ziadny konflikt tam nebol.
Teda je pravda ze tam bola len jedna tabulka a tu su 2 ale nebudem sa nad tym takto neskoro zamyslat.
Ja uz len cakam kedy pride Los a nauci ma to 8-)

EDIT: Mitch ...uz mi to doslo co si mi chcel povedat a mas pravdu.

Zpět do poradny Nahoru