phpbar.de logo

Mailinglisten-Archive

[dbs] Datenbankdesign für Mehrsprachigkeit

[dbs] Datenbankdesign für Mehrsprachigkeit

Michael Diederich michael at md-d.org
Die Apr 17 12:55:09 CEST 2007


Hallo,

ich muss mir überlegen, wie eine Datenbankanwendung mit mysql und InnoDB
mehrsprachig werden kann. Die Datenbank besteht aus ca. 100 Tabellen mit
Fremdschlüsselbeziehungen. Es gibt neben technischen Daten auch
Benutzer, die sich am System anmelden.

Lösung 1: Die Daten werden in einem Feld 'Ausgabe' 1:1 übersetzt. Wenn
ein Benutzer die Sprache DE, EN, FR und IT will, muss er sich in 4
Projekten anmelden, gespeicherte Daten sind nur im jeweiligen Projekt
verfügbar.

Lösung 2: Die Daten werden übersetzt, eine externe Datenbank speichert
die Benutzerdaten. Fremdschlüsselbeziehungen gehen damit kaputt.

Lösung 3: Bei jeder Abfrage wird eine Sprachauflösungstabelle verwendet.
Extremer Overhead, ähnlich wie symbolische Tabellen bei einem Wechsel
auf MaxDB.

Lösung 4: Replikation der nicht-technischen Daten zwischen den Servern.
Problem für InnoDB: Nicht alle Projekte müssen per se immer den gleichen
aktuellen Stand haben.

Das sind die Ideen, die ich bis jetzt habe. Jetzt wäre ich für weitere
Ideen und weniger Kopfschmerzen sehr dankbar :)

Vielen Dank und viele Grüße,

Michael



php::bar PHP Wiki   -   Listenarchive