powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / проектирование БД с многоязыковыми данными
21 сообщений из 21, страница 1 из 1
проектирование БД с многоязыковыми данными
    #33145192
bazaea
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уважаемый all

Есть ли типовые решения для поддержке многоязыковых данных?

Например есть таблица с полями скажем [Фамилия] [Имя] [Отчество] [кол -во рук] 1 запись для 1 человека, теперь нужно что бы Фамилия-Имя-Отчество было представлено кириллицей, латиницей, иероглифами, арабской вязью и т.д.

Первое что приходит в голову это вынести поля требующие транслитеризации - перевода в отдельную таблицу где на 1 человека приходится N (записей по кол - ву языков) еще идеи есть?
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145250
Фотография Va1entin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В MSSQL, например, можно задать collation.

2bezaa
Человеку свойственно ошибаться.
Латинские отчества в природе не существуют.

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145369
bazaea
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЧеловеку свойственно ошибаться.
Латинские отчества в природе не существуют.

Да же у Ivanova Petra Ivanovitcha?

авторВ MSSQL, например, можно задать collation.

Я совсем про другое спрашивал. Поясню, например когда вбиваются данные в русском офисе на русском, в украинском на татарском, тайваньском на китайском, а потом обмениваются эти данными необходимо чтобы
Данные выводились в соответствии с выбранным языком клиента.

Была возможность перевода/транслитерицации с одного языка на другой.

т.е. в России хотят видеть Иванова Петра Ивановича, в Ирландии Ivanova Petra Ivanovitcha
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145371
lesovick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сразу пришли 2 решения:
1. Для разных языков завести разные таблицы, например T_FIO_RUS, T_FIO_LAT и т.д., в таблицах создать поле со ссылками друг на друга (проще конечно поле идентификатор человека - одно и тоже значение для разных таблиц). Collation для разных таблиц разные
2. Делать это все в одной таблице, т.е. поля FAMILY_RUS, FAMILY_LAT
Collation для разных полей разные

ИМХО: я конечно не знаю все полноты постановки задачи, но первый вариант мне кажется более правильным.

С уважением, Л.
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145404
Фотография Va1entin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Корректно ставь задачу, болван.

Латиняне отчеств детям не давали.
И ирландцы тоже.
Это русское изобретение.

Можешь добавить в таблицу поле
[количество голов] и прописать nihilo на всех языках.


Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145562
bazaea
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to lesovik

не, не то, фигово маштабируется по языкам, т.е. с появлением нового языка нужно будет менять структуру.

to Va1entin

авторКорректно ставь задачу, болван.

Достал ты уже со своими латинянами, ты еще элийцев вспомни и еще кого вплоть до неандертальцев, твоих как я понимаю ближайших родственников.

Что изначально в задаче было неправильного?
специально для тебя еще раз

Одни и те же данные должны быть
Набраны и храниться в различных алфавитах если непереводимые

Набраны и храниться в различных переводах если переводимые

человек №1 должен быть представлен в БД как Иванов Петр Иванович и как Ivanov Petr Ivanovitch а не одно из этих двух, это уже клиент решит, на что ему смотреть.

клиент - опять таки специально для тебя, это клиентское приложение использующие данные.

многоязыковые данные - это данные на различных языках, а не на одном пусть даже на твоем родном неандертальском
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145566
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Этот вопрос уже на форуме (возможно правда в MS SQL) обсуждался.
Краткое содержание:
1) Если есть фиксированный набор языков (RUS/ENG) то проще дублировать поля
first_name_rus
first_name_eng
last_name_rus
....

или
menu_name
menu_name_alt

для поддержки альтернативного языка

2) Если языков неопределенное количество языков то доп таблица с ключем ID+LANG

Для такой странной системы я бы предложил хранить ФИО на базовом языке (например на латинице) в основной таблице, остальные в доп. таблице с двойным ключем ID+LANG.
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145643
lesovick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to: Estets
Позволю немного модернизировать и сделать все в одной таблице, что-то вроде

ID, ID_PARENT, FIO, ID_LANG

Тогда заводится один раз, а все последующие в разных языках со ссылкой на первого.

Хотя наверное это дело вкуса и постановки задачи.

С уважением, Л.
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145649
Фотография Va1entin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
многоязыковые данные - это данные на различных языках, а не на одном
пусть даже на твоем родном неандертальском

Я понял! Эволюция сделала тебя австралопитеком?

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145693
Фотография Shtock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145742
bazaea
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо Shtock.

ЗЫ Я чесно искал перед созданием топика

Специально для Va1entin
тема закрыта
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145743
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lesovickto: Estets
Позволю немного модернизировать и сделать все в одной таблице, что-то вроде

ID, ID_PARENT, FIO, ID_LANG

Тогда заводится один раз, а все последующие в разных языках со ссылкой на первого.


Может быть, но запись о "физ лице" имеет множество "языконезависимых" данных таких дата рождения, тип документа, номер документа... Получаем не совсем оптимальное хранение данных. Хотя мысль интересная. Правда в работе мне нужен был двуязычный интерфейс и я ограничился

first_name_rus
first_name_eng
last_name_rus
....
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145751
Фотография Va1entin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2bzeea
хам :-(

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33145807
bazaea
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to Va1entin
так получилось, я не хотел.
И еще Kennedy, John Fitzgerald это не русское изобретение, ФИО - принятый стандарт в русскоязычном мире. А вообще понятие отчество в разных культурах разное, в арабском мире через ибн могут до n-го колена перечислять отцов и отцов отцов . Так же интересно понятие отчества в испаноговорящих странах там тоже могут много предков (в зависимости от титула) привлечь, в том числе и по женской линии.
[Фамилия] [Имя] [Отчество] [кол -во рук] - я вообще привел для примера, непонятно что ты приципился к отчеству.

Еще раз спасибо всем.

to lesovick
если строить граф то неоптимальною будут хранится данные (уже сказано) и поиск нужного языка менее практичен чем то что я предлагал изначально, присутствовало в кратком содержании Estets, и в ссылке Shtock, и в том что ты сам сразу предложил.
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33146578
Templar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Примерно так
Персоны 1-М Имена
Имена М-1 Языки
Имена М-1 Шаблоны имен
Шаблоны имен М-1 Культуры
Культуры М-М Языки

На языки и культуры есть стандарты ISO. Можно использовать то, что есть в .NET.
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33146708
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Персоны 1-М Имена

Персона, судя по всему, суррогатный идентификатор и ничего более?

> Имена М-1 Языки
> Имена М-1 Шаблоны имен

Если нетрудно, под шаблоном имени что подразумевается?

> Шаблоны имен М-1 Культуры

Какой стандарт Вы имеете в виду, когда говорите о культуре?
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33146909
Templar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> Персоны 1-М Имена
Персона, судя по всему, суррогатный идентификатор и ничего более?
Не знаю, зависит от предметной области. Может, дата рождения, может еще что-то.


> Имена М-1 Языки
> Имена М-1 Шаблоны имен
Если нетрудно, под шаблоном имени что подразумевается?
Структура имени персоны: к-во имен, порядок, обязательность, обращения...


> Шаблоны имен М-1 Культуры
Какой стандарт Вы имеете в виду, когда говорите о культуре?
Например, RFC 1766, но не обязательно.
Культура - это идентификатор для множества специфичной структурированной информации. В данном конкретном случае автора сообщения интересует обобщение в культуры по двум множествам: языки и шаблоны имен.
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33146933
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Например, RFC 1766, но не обязательно.

Я не знаю rfc (1766 - не исключение), который хотя бы приблизительно оперировал понятием "культура". ;)

> Культура - это идентификатор для множества специфичной структурированной информации.

Вы вкладываете в этот термин смысл, отличный от содержащегося в стандартах (т. е. что-то кроме территориальных, языковых и пр. особенностей)?
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33146948
Templar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621>Я не знаю rfc (1766 - не исключение), который хотя бы приблизительно оперировал понятием "культура". ;)
...
Вы вкладываете в этот термин смысл, отличный от содержащегося в стандартах (т. е. что-то кроме территориальных, языковых и пр. особенностей)?
Уже сказано уже больше чем требовалось, имеющий уши да услышит. Тренироваться же в терминоболе с вами и с кем либо еще у меня нет ни времени, ни желания, так что извините.
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33147084
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Уже сказано уже больше чем требовалось, имеющий уши да услышит.

Имеющий уши услышал. На дополнительные вопросы есть регламент?

> Тренироваться же в терминоболе с вами и с кем либо еще у меня нет ни времени, ни желания, так что извините.

По поводу терминологии никто бодаться и не думал. Хотел уточнить, что именно Вы имели в виду.

ОК, задам вопрос по-другому. Вы писали: "Культура - это идентификатор для множества специфичной структурированной информации.". На мой взгляд, следует разделять понятия "культура" и "формальная территориальная обособленность". Если в Вашем ответе Вы имели в виду атрибуты, специфичные для некоторой территориально обособленной структуры (для определенности будем считать, что это государство), это один подход (раз уж Вы упомянули стандарты; я склонен считать, что Вы именно это и имели в виду). Можно понимать культуру как совокупность экстерриториальных атрибутов; да и само понятие культуры можно, вообще говоря, понимать абсолютно по-разному. Но тогда структура данных, которую Вы предлагаете для описания персон, представляется не совсем корректной. Уточните, пожалуйста, что Вы имели в виду.
...
Рейтинг: 0 / 0
проектирование БД с многоязыковыми данными
    #33151633
bazaea
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как показала практика самое удобное для меня оказалось даже с учетом того что 99% требует только 2 языка (рус/анг). [img]
т.к. на UI вообще нет дополнительных сложностей по поводу языка и связывания данных. Проверки данных. Далее используется 1 типизированный датасет, который заполняется в зависимости от языка (на кошерном фасадном слое), лишенный балласта в виде много сжирающих памяти текстовых полей на ненужном в данный момент языке.
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / проектирование БД с многоязыковыми данными
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]