Je suis conscient de plusieurs questions sur ce forum à ce sujet. Supposons que j'ai une énorme table d'options qui stocke des options de liste comme le genre, l'état matrimonial, et bien d'autres groupes spécifiques au domaine ayant la même structure. Je prévois de capturer dans un tableau OPTIONS
. Une autre option simple est d'avoir le champ défini comme ENUM, mais il y a aussi des inconvénients. http://www.brandonsavage.net/why-you-should-replace-enum-with-something-else/Single Large v/s Plusieurs petites tables MySQL pour stocker les options
OPTIONS
Tableau:
option_id <will be referred instead of the name>
name
value <more like a description, and not a name/value pair>
group
Requête: select .. from options where group = '15'
Utilisation: Sexe & Marital_Status sera dans les tableaux Personnes; mais la valeur stockée proviendra des options
eg.
Person
..
id=34 name=Prasad gender=31 marital_status=41
..
Options
..
31 gender male male
32 gender female female
...
41 marital_status single single
42 marital_status married married
..
- Comme ce tableau devrait être multi-locataire, le pas de lignes pourrait croître de façon drastique.
- Je crois que scinder les tables au lieu de trouver par le groupe serait plus facile à écrire & plus rapidement à exécuter.
- ou peut-être le partitionnement par le groupe ou le locataire?
Merci beaucoup Robert. Vous avez un peu mal compris: Gender & Marital_Status sera dans les tables Persons; cependant, la valeur stockée proviendra des options par exemple. personne .. id = 34 name = Prasad sexe = 31 = 42 marital_status .. options ... 31 sexe mâle mâle 32 sexe féminin femelle ... 41 marital_status unique unique 42 marital_status marié marié ... – Prasad