Je ne suis pas sûr si ce genre de question a déjà été posée mais j'ai cherché et j'ai pu trouver n'importe quoi.Meilleure façon de stocker beaucoup de colonnes booléennes dans le tableau
Je travaille sur une base de données au moment où a des dossiers qui ont beaucoup de valeurs à base de booléennes stockées avec eux, de sorte que la structure de la table ressemble à quelque chose comme ceci:
===Table===
ID <- int
Name <- string
Bool1 <- bool
Bool2 <- bool
Bool3 <- bool
Bool4 <- bool
Bool5 <- bool
Bool6 <- bool
Bool7 <- bool
Bool8 <- bool
Bool9 <- bool
pas toutes les valeurs booléennes sont définies une fois, de sorte que chaque enregistrement peut avoir un, plusieurs ou aucun sélectionné.
J'ai pensé à faire quelque chose comme ceci:
==Main Table== ===Second Table====
ID <- int PK ValueID <- PK links to Main Table ValueID
Name <- string ID <- int
ValueID <- FK Value <- Contains name of assigned value eg Bool1, Bool2
Donc, il y a une relation un à plusieurs entre la table principale et deuxième table jointe sur ValueID. Ainsi, la seconde table n'a que les données pour les éléments sélectionnés et plutôt un tas de valeurs booléennes vides dans la table principale.
La raison pour laquelle je pensais à le faire de cette façon était-il me permettrait d'ajouter différentes valeurs à stocker sur le disque à l'avenir plutôt puis en changeant la structure de la table.
Serait-ce un bon moyen de stocker les valeurs booléennes?
Je voudrais vraiment être en mesure de lier cela à une forme avec des cases à cocher , irait de cette façon rendre difficile. Donc, si c'est un peu difficile à comprendre ce dont j'ai besoin, je ne sais pas vraiment comment l'expliquer dans le texte.
Merci.
Serait une douleur à interroger atlest. – nos
Ouais j'ai pensé à cela, mais oui douleur à interroger et pas très amical. –
Le vrai problème est que vous perdriez toute chance d'avoir un index accélérer les requêtes. –