sql >> Databáze >  >> RDS >> Mysql

Návrh databáze MySQL s internacionalizací

Nejběžnějším způsobem, jak jsem to viděl, jsou dvě tabulky, membership a membership_ml , přičemž jedna ukládá základní hodnoty a ml tabulka ukládá lokalizované řetězce. Toto je podobné vaší druhé možnosti. Většina systémů, které takto vidím, je vytvořena tímto způsobem, protože nebyly od začátku navrženy s ohledem na internacionalizaci, takže další _ml tabulky byly „přichyceny“ později.

To, co považuji za lepší, je podobné vaší první možnosti, ale trochu jiné. Měli byste centrální tabulku pro ukládání všech překladů, ale místo toho, abyste tam vkládali název tabulky a název pole, používali byste k uložení všech překladů tokeny a centrální tabulku "Obsah". Tímto způsobem můžete vynutit určitý druh RI mezi tokeny v základní tabulce a překlady v tabulce Obsah, pokud chcete.

Ve skutečnosti jsem položil otázku o této věci před chvílí, takže se tam můžete podívat a získat další informace (spíše než sem znovu vkládat příklady schémat).



  1. Úprava pro výchozí nastavení časového pásma na RDS

  2. Jak převést křížový dotaz zpět na normální dotaz v Accessu

  3. Rozdíl mezi FIELD() a FIND_IN_SET() v MySQL

  4. Importujte více souborů výpisu .sql do databáze mysql ze shellu