Можно создать дубликат:
Schema for a multilanguage databaseКакая лучшая структура базы данных для хранения многоязычных данных?
Вот пример:
[ products ]
id (INT)
name-en_us (VARCHAR)
name-es_es (VARCHAR)
name-pt_br (VARCHAR)
description-en_us (VARCHAR)
description-es_es (VARCHAR)
description-pt_br (VARCHAR)
price (DECIMAL)
Проблема: каждый новый язык необходимо изменить структуру таблицы.
Вот еще один пример:
[ products-en_us ]
id (INT)
name (VARCHAR)
description (VARCHAR)
price (DECIMAL)
[ products-es_es ]
id (INT)
name (VARCHAR)
description (VARCHAR)
price (DECIMAL)
Проблема: каждый новый язык будет нуждаться в создании новых таблиц и поле «цена» дублируются в каждой таблице.
Вот еще один пример:
[ languages ]
id (INT)
name (VARCHAR)
[ products ]
id (INT)
price (DECIMAL)
[ translation ]
id (INT, PK)
model (VARCHAR) // product
field (VARCHAR) // name
language_id (INT, FK)
text (VARCHAR)
Проблема: Fuc * ING трудно?
Третий способ более-менее правильный - что в этом трудно сделать? –
Проблема заключается в том, что при каждом найденном вами решении вы всегда найдете случай, когда вам нужно изменить таблицу - то есть больше языков, разных языков, другое поле ... –
Вы можете проверить эту ссылку: http://www.gsdesign.ro/blog/multilanguage-database-design-approach/ , хотя чтение комментариев очень полезно –