Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

5
  • 1
    I agree, though personally I'd have a localised table for each main table, to allow foreign keys to be implemented. Commented Dec 3, 2008 at 11:58
  • 1
    Although the third option is the most clean and sound implementation of the problem it is more complex then first one. I think displaying, editing, reporting the general version needs so much extra effort that it does not always acceptable. I have implemented both solutions, the simpler was enough when the users needed a read-only (sometimes missing) translation of the "main" application language. Commented Oct 14, 2009 at 7:40
  • 14
    What if the product table contains several translated fields ? When retrieving products, you will have to do one additional join per translated field, which will result in severe performance issues. There is as well (IMO) additional complexity for insert/update/delete. The single advantage of this is the lower number of tables. I would go for the method proposed by SunWuKung : I think it's a good balance between performance, complexity, and maintenance issues. Commented Jan 20, 2011 at 10:08
  • @Adam- I am confused, maybe I misunderstood. You suggested the third one, right? Please explain it in more detail how are relations between those tables gonna be ? You mean we have to implement Translation and TranslationEntry tables for each tables in DB ? Commented Sep 8, 2011 at 4:57
  • @s.amani No, all the tables in the database refer to one set of translation tables. So for the entire database you'll only have one translation and one translationentry table. The other tables will have keys that link into the translation tables to get the correct entries. Commented Sep 8, 2011 at 12:05