phpbar.de logo

Mailinglisten-Archive

Mehrsprachiger Dateninhalt

Mehrsprachiger Dateninhalt

Michael Bergbauer mysql_(at)_lists.phpcenter.de
Sun, 27 May 2001 23:50:59 +0200 (CEST)


On 27-May-2001 Reinhold Roppert wrote:
> Hallo,
> 
> ich bin beim Erstellen einer Produktdatenbank, wobei die 
> Produktbeschreibungen und Texte in mehreren Sprachen 
> gespeichert werden sollen. 
> 
> In den einzelnen Tabellen gibt es nur wenige Felder die Texte 
> enthalten, die in den verschiedenen Sprachen dargestellt werden 
> müssen. Wie kann man nun am einfachsten die 
> verschiedensprachigen Texte unterbringen.
> 
> Mir sind 3 Möglichkeiten eingefallen:
> 1. für jede Sprache eine eigene Datenbank. --> ist sicher nicht 
> sinnvoll.
> 2. Alle Felder die entsprechende Texte enthalten für jede Sprache 
> einmal in der Tabelle anlegen. --> lässt sich schlecht erweitern, 
> wenn neue Sprachen dazukommen.
> 
> 3. Eine Tabelle in der alle Texte abgelegt sind und zwar enthält ein 
> Datensatz den Text in einer Sprache und eine SprachID. 
> Die Tabellen werden dann entsprechend verknüpft.


Ich mach sowas gerade beruflich, allerdings unter Oracle, und arbeite da
natürlich auch mit den Foreign keys. Ich mach bei sowas für jede Tabelle, die
sprachabhängige Daten enthält (also z.B. Beschreibungen, URLS, usw) eine
zusätzliche <tabelle>_Languages, in die diese sachen einkommen. Ich hab also
dann eine Tabelle, die alle sprachunabhängigen Sachen enthält (kann auch nur
der Primärschlüssel sein(!); ich schlepp diese Tabellen trotzdem mit, weil dann
bestimmte Sachen schöner gehen), und eine Tabelle, die die sprachabhängigen
Sachen enthält, und die mit der jeweiligen sprachunanbhängigen und mit der
Tabelle "languages" verknüpft ist (Primärschlüssel ist der der Primärschlüssel
der sprachunabhängigen Tabelle + LanguageID, also die beiden Foreign keys in
der Tabelle). Bläht allerdings das Datenmodell ein kleines bischen auf, weil
man nahezu jede Tabelle "doppelt" hat.

> Die Ausgabe der Daten erfolgt in HTML mit ColdFusion als 
> Applikationserver

Jo, bei mir auch


Michael

-- 
Michael Bergbauer <michael.bergbauer_(at)_gmx.net>
Use your idle CPU cycles.
See http://www.distributed.net and win $ 1 000.
Visit our mud Geas at geas.franken.de Port 3333

---
*** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql 



php::bar PHP Wiki   -   Listenarchive