2015-07-14 17 views
5

Forse non ho mai cercato nel posto giusto, ma spesso mi chiedo quale sia la pratica migliore per memorizzare più dati in un campo e non ho mai trovato una risposta che potrei usare.MySQL DB più dati per il campo

Vorrei essere più chiaro con un esempio.

Diciamo che ho un campo "Hobbys" in un user_table

Quando l'iscrizione dell'utente che desidera aggiungere tennis, video game e piano al suo profilo.

E 'meglio:

  1. Per creare campi diversi per ogni hobby come: hobby_id_1, hobby_id_2, hobby_id_3

  2. o creare un singolo campo chiamato Hobbys e inserire i dati separati da una virgola? hobbys_id => 1,4,5 (è questa soluzione è in realtà possibile?)

E poi quando vogliamo aggiornare tali dati e aggiungere un nuovo hobby per esempio, come lo facciamo?

Qualsiasi piccolo aiuto sarebbe molto apprezzato.

Grazie in anticipo :)

risposta

6

Questo rientra molti a molti rapporto.

Per memorizzare relazioni molti-a-molti, è necessaria una tabella intermedia che memorizza principalmente le chiavi primarie (ID) di ogni relazione. Nel tuo caso,

users_table (user_id, nome, ...)

hobbies_table (hobby_id, nome, ...)

users_hobbies_table (id, user_id, hobby_id)

Here è una spiegazione più elaborata.

+1

Suoni legittimi e comprensibili – Valentincognito

Problemi correlati