1

複数の言語をサポートする Web サイトを作成する必要がありますが、作成したことがなく、アプリケーション用の DB の作成についてサポートが必要です。

Webサイトはコマースになるので、ITEMテーブルを例に取りましょう。すぐに思いついたのはこのモデルだけですが、Language テーブルが Item テーブルに関連付けられているため、良いとは思いませんが、Company テーブルも作成する予定です。

Item
    ID
    Price

Language
    ID
    ItemID
    Language (example: en-US)
    Field (example: title)
    Value (example: Good Title)

複数の言語をサポートする優れたデータベースの設計を手伝ってくれる人はいますか?

4

2 に答える 2

2

多言語データをデータベースに保存する方法は複数ありますが、通常は次のようにします。

Item
  ID
  price
  title_translation_key_id (is a TranslationKey foreign key)
  desc_translation_key_id (is a TranslationKey foreign key)

TranslationKey
  ID
  key (string)

Translation
  ID
  translation_key_id (is a TranslationKey foreign key)
  content (string)
  language_id (is a Language foreign key)

Language 
  ID
  code

データを取得する方法は?

サブセレクトを使用するか、データベースがうまく機能しない場合は、データベースから言語固有のテーブルを生成できます。

于 2012-09-06T13:06:19.647 に答える