![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Структура мультиязычной базы
alsov © (2006-05-04 09:31:00)Приветствую, Мастера.
Интересует Ваше мнение по поводу реализации мультиязычной базы(русский/английский/украинский). Каким способом лучше делать?
Пока вижу только два:
1. Держать все 3 языка в одной таблице. Обзывать поля с суффиксами. Наример Field1_RUS, Field1_ENG, Field1_UKR.
2. Для каждого языка делать отдельную табличку. Суффикс языка в названии таблицы.
Может есть еще варианты?
Nikolay M. (2006-05-04 14:59:00) [1]
> solenko © (04.05.06 14:26) [8]
Тогда я не понял, что имеется ввиду под "многоязычностью базы".
Прошу простить, что вклинился в обсуждение :)
solenko (2006-05-04 14:26:00) [2]Nikolay M., а каким образом юникод поможет многоязычности?
Имхо, Sergey13 предложил единственно верный вариант -- встречал такой подход во многих CMS.
Nikolay M. (2006-05-04 13:01:00) [3]
> Может есть еще варианты?
Вариант с юникодом не приходил в голову?
Поля... таблички... Да чего там - делай на каждый язык по отдельному серверу БД. А при коннекте спрашивай у юзера, на каком языке он будет работать и подключайся к соотв. серверу :)
alsov (2006-05-04 12:59:00) [4]:)
вроде догнал
теперь 3 варианта
Sergey13 (2006-05-04 12:47:00) [5]2[4] alsov © (04.05.06 12:41)
>То есть для каждой таблички делается 2 таблицы
Я бы сказал вместо1 таблички делается 2 таблицы
>первая содержит ссылки на текст второй
Скорее наоборот - "текстовая" таблица ссылается на "основную".
>Я правильно понял?
Вроде да. А что ты понял? 8-)
alsov (2006-05-04 12:41:00) [6]То есть для каждой таблички делается 2 таблицы
первая содержит ссылки на текст второй. во второй текст + код языка(и это только для текстовых полей). Я правильно понял?
Sergey13 (2006-05-04 10:04:00) [7]2[2] alsov © (04.05.06 09:55)
Ты меня не понял. Я предлагаю создавать основную таблицу без текстовых полей. Текстовики выносятся в отдельн уютаблиц у, со ссылкой на главную и указанием языка. Так можно сделать действительно мультиязычную (а не 3-х язычную) БД.
alsov (2006-05-04 09:55:00) [8]Я тоже склоняюсь ко второму варианту. Во всяком случае все равно запросы будут в ресурсстрингах. Но поменять название таблицы проще названия всех полей в запросе. Тут вы правы.
Sergey13 (2006-05-04 09:35:00) [9]Если интересует одновременная работа с несколькими языками, то, ИМХО, логичнее будет создавать дочерние таблицы с текстовыми полями и указанием языка. По крайней мере запросы не придется переписывать.