Meilleur façon de procéder pour lier une table à plusieurs

Eléphant du PHP | 82 Messages

21 avr. 2013, 17:49

Bonjour,

J'ai une table commentaire. Cette table contiendra les commentaires sur les articles, mais aussi les commentaire et évaluation des documents, etc...

Quelle est donc la façon la plus propre de procéder ? Créer une table commentaire par module (ex: commentaire_articles, commentaire_documents, etc..)? Je pense que c'est dommage..

Ou sinon voici ce que je fait pour le moment : Dans commentaire, j'ai un champ : ort (qui détermine vers quelle module le commentaire pointe (1 = article, 2 = document, etc..). Et un champ ort_id qui détermine l'id de l'entrée dans le module..

Serait il encore plus propre de faire une table intermédiaire qui s'appellerait "tri" et qui aurait une id, et un nom de table. Donc si je pointe sur l'id 1 de tri, son champs table sera donc "article", et ça pointera donc sur la table article ?

Merci d'avance pour vos éclaircissements !

ViPHP
ViPHP | 2577 Messages

23 avr. 2013, 13:41

Bonjour,

Ca ne me semble pas mauvais d'avoir une seule table.
Pour la clé de la table des commentaires, il me semble mieux de mettre l'id de l'article (ou du document) et ensuite le code du module. En effet il est mieux de mettre en premier dans un index le critère le plus discriminant.