[gl-como] Mysql gestione sistema piramidale
Francesco Angelo Brisa
fbrisa@gmail.com
Mar 3 Mar 2015 23:31:44 CET
Effettivamente, se nemmeno chi ti ha proposto il lavoro ha le idee chiare
allora, si generico !
Una sola tabella:
id, parent, livello, PR, altri campi.....
per semplificare le query consiglio di fare qualche vista o meglio ancora
una tabelle che si aggiorna da triggers con l'lenco di tutti i figli,
nipoti etc... di un nodo.
tabella:
parent, figlio
dove la coppia "parent + figlio" sono univoche
in questo modo con una semplice join hai tutti i figli di un padre.
Il giorno 3 marzo 2015 20:52, Mpuppeteer <mpuppetier@gmail.com> ha scritto:
>
> Il giorno 3 marzo 2015 19:49, Diego Roversi <diegor@tiscali.it> ha
> scritto:
>
> On Tue, 3 Mar 2015 16:26:50 +0100
>> Mpuppeteer <mpuppetier@gmail.com> wrote:
>>
>> > Ciao ragazzi,
>> > sono indeciso su come gestire un sistema piramidale a livello di
>> database:
>> >
>> > L'idea è la classica tabella
>> > id e parent_id, ma mi sembra complicato da gestire.
>> >
>>
>> Oh cielo, i sistemi piramidali.
>>
>> Ad ogni modo gestire un sistema gerarchico in generale in sql, e quasi
>> impossibile (se si usano solo query). Se usi un id_parent, ti serve
>> comunque del codice che cicla e lancia svariate query per trovare i nodi
>> figli. Se cerchi di farlo con un unica query, non se po' fa' ...
>>
>> Nel tuo caso hai una semplificazione non da poco, che e' quella che ti
>> interessano un numero limitato di sotto livelli. Quindi al limite puoi
>> creare una tabella con:
>>
>> id, id_parent_1, id_parent_2, id_parent_3, in cui specifichi il nodo di
>> chi e' figlio, nipote, pronipote etc etc...
>>
>> --
>> Diego Roversi <diegor@tiscali.it>
>>
>> --
>> Mailing list info: http://lists.linux.it/listinfo/gl-como
>>
>
> Grazie Diego, infatti stavo rivedendo la cosa soprattutto per
> l'inserimento dei figli dei figli ecc...
> con una funzione ricorsiva funziona, ma le query diventano parecchie.
> La tua idea mi piace, sperimento e ti faccio sapere!
>
> Il problema vero e proprio è che nemmeno chi mi ha proposto il lavoro ha
> un'idea precisa su cosa vuole fare.. tanto per cambiare.
>
>
>
> --
> Mailing list info: http://lists.linux.it/listinfo/gl-como
>
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.linux.it/pipermail/gl-como/attachments/20150303/2dcf7ca0/attachment.html>
Maggiori informazioni sulla lista
gl-como