verwendetes Datenbanksystem: MS SQL
Hallo zusammen,
gibt es eine Best Practise für die Loaklisation von Datenbank-Tabellen?
Was ich bisher so gelesen habe ist, dass es zu einer Tabelle A eine Tabelle LanguageA geben sollte. Diese enthält dann sowas wie:
LanguageID
IsoCode
Language
Translation
und als Foreign Key dann den Verweis auf Tabelle A in Form von TableAID
Ich hätte es gerne etwas generischer. In etwa so:
LanguageID
IsoCode
Language
Translation
EntityID <- generischer Foreign Key
Jetzt hätte ich nur noch eine Translation Tabelle. Hier stoße ich aber glaube ich auf Foreign Key Constraint Probleme, weil jede zu übersetzende Tabelle mit seinem Primary Key auf den Foreign Key der Tanslate-Tabelle zeigen müsste.
Wie wäre mein generischer Ansatz überhaupt möglich? Oder muss ich tatsächlich für jede zu übersetzende Tabelle eine eigene Sprachtabelle haben? Oder gibt es noch andere Ansätze?
Vergib anstatt der EntityId in der Translationstabelle eine TranslationId in deiner Entitytabelle.
Die TranslationId ergibt zusammen mit der LanguageId dann die gewünschte Übersetzung.