Bonsoir,
j'ai un certains nombre de tables possédant :
  • des clés primaires composites
  • un champ "libellé"

Le champ libellé contient comme son nom l'indique un libellé qui est afficher dans la langue par défaut de mon application. Dernièrement on me demande de faire en sorte que mon application puisse être traduite dynamiquement dans plusieurs langues. Et on me propose de rajouter une table "générique" (TR_TRADUCTION), contenant les champs :
- TR_KEY_N1 => Champ 1 de la clé primaire numérique
- TR_KEY_N2
- TR_KEY_N3
- TR_KEY_N4
- TR_KEY_V1 => Champ 1 de la clé primaire alphanumérique
- TR_KEY_V2
- TR_KEY_V3
- TR_KEY_V4
- TR_CODE_LANGUE
- TR_TRADUCTION

Mon modèle n'est pas impacté, je peux gérer n langues mais par contre :
Je n'ai plus d'intégrité référentiel => je sens que c'est un code smell.

Comment modéliser-vous ce type d'information de votre côté?

Merci d'avance pour votre retour.