J'ai une application Web qui informe les utilisateurs de l'activité sur le site par courrier électronique. Les utilisateurs peuvent choisir les types de notifications qu'ils souhaitent recevoir. Jusqu'à présent, il existe environ 10 options différentes (chacune est vraie/fausse).Meilleure façon de stocker plusieurs indicateurs dans la base de données
Je stocke actuellement cela dans un champ varchar comme 0 ou 1 séparés par des virgules. Par exemple: 1,0,0,0,1,1,1,1,0,0
Cela fonctionne mais il est difficile d'ajouter de nouveaux indicateurs de notification et de garder la trace de l'indicateur correspondant à quelle notification. Existe-t-il une norme acceptée pour ce faire? Je pensais ajouter une autre table avec une colonne pour chaque type de notification. Ensuite, je peux ajouter de nouvelles colonnes si j'en ai besoin, mais je ne suis pas sûr de son efficacité.
Merci d'avance!
Cela semble la meilleure solution de loin IMO. Les stocker tous dans une colonne n'est pas très extensible. Et les stocker comme des champs bool dans une table signifie que vous devez ajouter un nouveau champ chaque fois qu'il y a un nouveau type de notification. – Craig
Cela fonctionnerait bien, en particulier si vous voulez pouvoir scanner les types de notification. – BCS
La normalisation est excellente pour l'extensibilité, mais elle souffre un peu des performances. – stephenbayer