Dire que j'ai les tableaux suivants:Database Design: simplifier beaucoup à beaucoup
- personne (person_id, nom)
- ethnicité (ethnicity_id, nom)
- person_ethnicity (person_id, ethnicity_id)
Cela me permettrait de définir un person
pour avoir 0 ou plus ethnicity
ET un ethnicity
pour avoir 0 ou plus person
à travers le person_ethnicity
tableau. Maintenant, disons que j'ai beaucoup de ces tables de type "ethnicité" où je dois faire la même relation plusieurs à plusieurs avec la table person
. Le nombre de mes tables va augmenter rapidement.
Est-ce une bonne idée d'avoir une table comme ceci:
- foo (person_id, other_table_name, other_table_pk)
Un exemple:
=================================================
| person_id | other_table_name | other_table_pk |
=================================================
| 1 | ethnicity | 1 |
-------------------------------------------------
je perds referencial l'intégrité de cette façon, mais rendrait la modélisation beaucoup plus facile, je pense. Cette approche est-elle une bonne idée ou une idée horrible et horrible?
(Aussi, est-il un nom propre pour l'approche que je décrit ci-dessus?)
Envisagez-vous d'avoir plusieurs autres relations à une personne autre que l'appartenance ethnique? Je demande à cause de votre deuxième solution semble que vous prévoyez d'avoir plusieurs tables/ids unis. – Khez
@Khez - oui, comme décrit dans mon message initial. – StackOverflowNewbie
Vous avez décrit une personne et une relation ethnique. Pourtant, votre deuxième solution implique d'avoir d'autres relations, comme la nationalité. Si ce n'est pas le cas, votre deuxième solution est une très mauvaise idée. – Khez