Progettazione del database per collegare la relazione genitore e figlio

0

Attualmente ho dei requisiti che dicono che l'utente di un'interfaccia utente crea dei propri moduli con tipi textbox, choicegroup ecc. Qualcuno ha qualche idea su come progettare il database per archiviare tutti i dati? Se l'utente desidera collegare form1 a form2 ecc., In che modo questi collegamenti di dati verranno archiviati nel database?

Ad esempio, parent1 ha child1 & Child2, il flusso può essere come questo genitore1- > child1- > child2. (In 1 riga singola come sarà necessario mantenere la relazione padre figlio nelle tabelle del database)

    
posta AdminS 03.06.2015 - 12:03
fonte

1 risposta

2

Le relazioni padre-figlio vengono solitamente implementate nei database con una colonna parent_id . Quindi, ogni bambino ha un riferimento diretto al suo genitore, e tutti i figli del genitore A possono essere trovati eseguendo un SELECT ... WHERE parent_id = A .

Questo ha lo svantaggio di non codificare l'ordine dei bambini in alcun modo, quindi se i figli devono essere ordinati, è necessario un ulteriore campo order , di solito di tipo real . Pertanto, l'inserimento di un bambino in un punto specifico lungo l'elenco di bambini viene eseguito con new_child.order = (previous_child.order + next_child.order) / 2 .

Oltre a questo, non è chiaro cosa stai chiedendo. Sembra che la tua domanda sia stata inutilmente complicata includendo elementi sulla tua interfaccia utente nella narrazione. Le considerazioni sull'interfaccia utente sembrano essere completamente estranee alla domanda su come rappresentare le relazioni genitore-figlio nei database.

    
risposta data 03.06.2015 - 12:11
fonte

Leggi altre domande sui tag