2010-06-19 5 views
1

J'ai une question sur la façon d'enregistrer les métadonnées pour les lignes de table.Métadonnées MySQL pour les lignes de table

Par exemple, j'ai une table qui contient des données sur les images items_images. id, INT (20) titre , VARCHAR (255) DATE_ADDED, DATETIME ...

Maintenant, je veux ajouter un système de vote où les utilisateurs peuvent voter "comme" ou "aversion" pour les éléments d'image. Dois-je ajouter deux nouveaux champs à la items_images: votes_like, INT (20) votes_dislike, INT (20)

ou devrais-je créer une table séparée pour stocker ces données méta votes: item_id, INT (20) votes_like, INT (20) votes_dislike, INT (20)

Merci pour votre aide!

Répondre

1

Ne répétez pas les données! Vous êtes censé stocker qui a voté, n'est-ce pas? Vous devriez créer une nouvelle table comme votre approche ultérieure.

Voir:

Database Normalization

+0

+1 pour l'importance de la normalisation – DrColossos

0

Comme je l'ai bien compris, vous voulez juste sauver, le nombre de goûts et non qui ont voté. Que je voudrais modifier la table et les deux colonnes, car il est légèrement plus rapide qu'une deuxième table.

Si vous souhaitez enregistrer les votes, je veux dire qui a voté, j'aggree totalement avec Sarfraz Ahmed