powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Multi Languages
25 сообщений из 25, страница 1 из 1
Multi Languages
    #32743319
Michael7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zdraste vsem.
Vopros: mozhno li nastroit' DB dlya raboti c neskol'kimi yazikami?
Esli da, to gde est' opisanie, kak eto delaetsya?
...
Рейтинг: 0 / 0
Multi Languages
    #32743475
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASA, ASE, IQ?
несколько языков - UTF8?

...
Рейтинг: 0 / 0
Multi Languages
    #32743950
_Dog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще вариант - через custom collation.
...
Рейтинг: 0 / 0
Multi Languages
    #32789007
Michael7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pol'zuyu ASA.

Chto takoe UTF8?

Nuzhno - English, Russian, Hebrew (mozhet bit' Espanyol v budushem)
Imeetsya - English, Hebrew

Slishal koe chto o "custom collation", no ne ponyal kak etim pol'zovat'sya. Est' kakaya - nibud' infa po-russki?
Zaranee blagodaren
...
Рейтинг: 0 / 0
Multi Languages
    #32789105
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. тип бд не указан, то:
В инструкции по ASE очень подробно описано как это делать. В пределах группы европейских языков проблем нет. Если языки нужны разных групп (например азиатские и европейские), то только юникод.
...
Рейтинг: 0 / 0
Multi Languages
    #32789133
Michael7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ggg_old: chto ti imeesh vvidu pod tipom BD?

Imeetsya li help na russkom? esli da, to gde?
...
Рейтинг: 0 / 0
Multi Languages
    #32789662
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
см. выше.
АСА, АСЕ или АйКю?
...
Рейтинг: 0 / 0
Multi Languages
    #32790085
Michael7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
см. выше.
ASA 7 !!!

Bolee vnyatno:
Nuzhno sozdat' takuyu DB v Sybase ASA 7, kotoraya pozvolila bi ODNOVREMENNO rabotat' s 3-mya yazikami: naprimer zapisivat' v odnu tablitzu familiy Ivanov po-russki, familiyu Smith po-angliiski, familiyu Abramovitch na hebrew (razumeetsya v raznih zapisyah).
Vopros:
1. Mozhno li sdelat' takuyu DB
2. Esli da, to kak.
3. Sushestvuet li dokumentatziya po etomu voprosu? (standartnii Help ne pomogaet, tam net yasnogo otveta)
...
Рейтинг: 0 / 0
Multi Languages
    #32790159
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну если надо в одной таблице держать имена на разных языках, то путь только один - UTF8. Это кодировка в которой одна буква может быть записана одним, двумя, тремя или четырьмя байтами.
Создаешь новую базу данных, указываешь ей кодировку UTF8, она так и называется UTF8 и никаких проблем.
Сервер будет сортировать фамилии в алфавитном порядке, впрочем, я не могу предсказать в каком порядке пойдут алфавиты :)
Отображение этих текстов на экране - вопрос уже чуть более сложный, но все современные языковые среды умеют работать с UTF8 тескстами. Берешь свой любимый инструмент и ищешь в его хелпе все что относится к UTF8 или Unicode.
...
Рейтинг: 0 / 0
Multi Languages
    #32798574
Michael7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sozdal DB c kodirovkoy UTF8.
Voprosi:
1. kakim obrazom ya mogu uznat' na kakom yazike zapisano znachenie v pole?
2. Chto est' vmesto function "Ascii"?
3. Mogu li ya ispol'zovat' type varchar (char) ili mne nuzhno chto-libo drugoe?
...
Рейтинг: 0 / 0
Multi Languages
    #32798688
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) В общем-то никак. В одном поле могут находится буквы из разных языков. Никто и ничто не запрещается записать в поле текст типа: 'Hello Вася, glad встретить you'. Вот скажи, на каком это языке? :) А вообще, зачем определять язык то? Если для показа на экране - просто назначаешь для визуального поля шрифт созданый с учетом unicode и все. Например стандартные Arial или Times New Roman. Не забывай главный принцип unicode - каждая буква знает из какого алфавита она пришла. Все "кодировки" это урезаный unicode в котором код языка устанавливается глобально для всего приложения а не для отдельной буквы.

2) А зачем она? Ascii() в принципе будет работать и на юникодные символы. Попробуй и увидишь :)

3) Конечно можешь. Char это ни в коем случае не аналог байта. Char это символ. А сколько байт потрачено на его запись это никого не волнует. А если волнует - значит человек не понимает основ :)
...
Рейтинг: 0 / 0
Multi Languages
    #32801110
Michael7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlА вообще, зачем определять язык то? Если для показа на экране - просто назначаешь для визуального поля шрифт созданый с учетом unicode и все. Например стандартные Arial или Times New Roman. Не забывай главный принцип unicode - каждая буква знает из какого алфавита она пришла. Все "кодировки" это урезаный unicode в котором код языка устанавливается глобально для всего приложения а не для отдельной буквы.

Простой пример: Аппликация на дельфи, компонент TEdit не понимает unicode или если понимает, то я не знаю как. Я пытался решить проблему установкой Font.CharSet. Для этого нужно было знать на каком языке записано значение в поле. По условию задачи в одном поле одной строки ТОЛЬКО ОДИН язык.
White Owl А зачем она? Ascii() в принципе будет работать и на юникодные символы. Попробуй и увидишь
Попробовал и увидел, что возвращается NULL. Пробовал в Interactive SQL. Или что-то в настройке БД неверно? Хотелось бы знать что.
White Owlчеловек не понимает основ
Если бы я понимал, то и не спрашивал бы :) Я был бы не против, если бы меня отправили читать первоисточники по этому вопросу, но где они?
...
Рейтинг: 0 / 0
Multi Languages
    #32801156
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michael7
Простой пример: Аппликация на дельфи, компонент TEdit не понимает unicode или если понимает, то я не знаю как. Я пытался решить проблему установкой Font.CharSet. Для этого нужно было знать на каком языке записано значение в поле. По условию задачи в одном поле одной строки ТОЛЬКО ОДИН язык.

Язык и charset - это не одно и то же. Если там только один charset, это еще не значит, что там только один язык. Яркий пример - charset UTF8/16. О чем тебе Ascrus и пытается втолковать.
...
Рейтинг: 0 / 0
Multi Languages
    #32801221
Michael7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В упор не вижу в дельфи UTF8/16. По поводу CharSet-ов вы, возможно, правы, но тогда объясните мне такую элементарную вещь:
есть компонент Edit1, в котором я набрал текст на русском и сохранил его в бд, компонент Edit2, в котором я набрал текст на арабском и компонент Edit3, в котором я набрал текст на грузинском. Теперь я хочу прочитать запись и отобразить ее в Edit4. На каком она язаке я, естественно, заранее не знаю. Если Edit4.Font.Charset = RUSSIAN_CHARSET, то любое слово будет отображаться русскими буковками, и не важно какой фонт установлен Arial, Times New Roman или Georgiya.
...
Рейтинг: 0 / 0
Multi Languages
    #32803437
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я дельфу уже забыл почти и не знаю честно говоря, поддерживает ли она Unicode. Может и нет. С другой стороны, последняя (для .Net) видимо должна - в .Net вроде бы все на Unicode.

Но видимо если тебе нужно в одном Edit -е иметь и грузинский текст, и арабский, и еще какой-то , то тебе нужно именно на Unicode ориентироваться. При этом база данных здесь вообще ни при чем - она только хранит и все. А вот приложение видимо Unicode-ное должно быть. И шрифты должно Unicode-ные использовать (а их кстати не так и много).
...
Рейтинг: 0 / 0
Multi Languages
    #32803704
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivЯ дельфу уже забыл почти и не знаю честно говоря, поддерживает ли она Unicode. Может и нет.
Родные контролы Unicode действительно не поддерживают, но я слышал о существовании сторонних. Сам в эту сторону не копал за полной ненадобностью (вроде в ElPack-е есть такие), но рекомендовал бы Michael7 копнуть в эту сторону, т.к. IMHO единственное нормальное решение его проблемы - это переход на Unicode.
...
Рейтинг: 0 / 0
Multi Languages
    #32805153
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот, я всегда говорил, что дельфи - отстой.
...
Рейтинг: 0 / 0
Multi Languages
    #32805316
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы не стал заявлять, что delphi - отстой.
Отстойна сама технология под названием юникод.

Приведу пример.
Есть буква i . Ее upcase соответствует букве I .
Но! В турецком языке upcase i есть буква İ .
Вопрос - каким образом определить что я ищу без указания
языка?

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

...
Рейтинг: 0 / 0
Multi Languages
    #32806496
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рыжий КотЯ бы не стал заявлять, что delphi - отстой.
Отстойна сама технология под названием юникод.
Ну это вы уже загнули, месье.

Рыжий Кот
Есть буква i . Ее upcase соответствует букве I .
Но! В турецком языке upcase i есть буква İ .
Вопрос - каким образом определить что я ищу без указания
языка?
Давай чуть упростим твой пример. Вот есть английская буква 'A' и есть русская буква 'А'. Предположим у нас есть список клиентов в котором в перемешку английские и русские фамилии. Есть поле ввода для быстрого поиска клиента. Как объяснить компьютеру что в данный момент мы ищем клиентов с русской А в начале фамилии, а через пять минут ищем с английской? Ну-с? Сколько секунд тебе потребуется на нахождение ответа? :) Правильно - мы переключим раскладку клавиатуры находясь в поле ввода для поиска. То же самое и с турецким, и с ивритом и с чем угодно. Хоть иероглифы! :)
Единственный момент что у тебя и поле ввода должно уметь работать с юникодными шрифтами и список клиентов отображать юникодные символы. Элементарно! :)

Рыжий Коти таких примеров много... особенно когда пересекаются языки разных групп, но изображения символов совпадают.
Никаких проблем :) У нас у всех, перед глазами постоянный пример - латинский и кириллица. Какая разница толи эти два шрифта будут частью одного 255-и элементного шрифта или они они будут частями шрифта с намного большим количеством символов? :)
...
Рейтинг: 0 / 0
Multi Languages
    #32806596
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl,

рассматривать русский язык - в корне неверно.
Поскольку все символы в нем вынесены в отдельный диапазон.
Ни С, ни А, ни О, и т.д. не совпадают с латинскими эквивалентами.
Турецкий, Азербайджанский, Узбекский языки основаны на латинице.
Их i - та же что и в традиционном Английском. Но его заглавный эквивалент
не совпадает с Английским. Кстати, работая в MS Word, эти все проблемы видны, необязательно быть специалистом :)

...
Рейтинг: 0 / 0
Multi Languages
    #32806621
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl Рыжий КотЯ бы не стал заявлять, что delphi - отстой.
Отстойна сама технология под названием юникод.
Ну это вы уже загнули, месье.



Тогда почему в стандарте юникод существуют пары букв A, C, O - одна латинская, другая кирилица?
Почему для кириллицы сделали свой диапазон?
Ответ прост - чтобы избежать большого числа граблей.
Почему для каждого языка (на алфавита!) не сделали свой диапазон?
Тогда бы и сортировки были бы нормальными.
Кстати, тогда было бы 3 буквы A: вьетнамский набор - копия английского с
перемежением видоизмененных А, О, U (над ними миллион черточек и палочек) и т.д. (кстати, во вьетнамском нет F и еще каких-то английских согласных)
...
Рейтинг: 0 / 0
Multi Languages
    #32806704
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ой, Кот, ну какая разница в отдельном диапазоне буквы одного алфавита или используют один общий диапазон?
Задача у нас как стоит? Поместить в базу данных несколько текстов на разных языках, найти в базе нужный текст и показать его на экране. Так?
Ну какая разница один байт используется для записи одного символа или двадцать? Да хоть по триста байт! Символ введеный пользователем с клавиатуры должен совпадать с тем изображением которое появится на экране по select. ВСЕ!
UTF8 как раз и удовлетворяет этому требованию. Он не ограничивает список доступных символов 256-ю (255 если отбросить нулевой символ).

Мне глубоко по барабану порядок символов в 255-символьном шрифте. У нас (у ASA сервера) имеются встроенные таблицы сортировки и конвертации регистра. Вот пусть машина и думает :)

Чем тебя смущает турецкая i ? Тем что она в применяющемся сегодня 255-вариантном шрифте совпадает по коду с английской i? Турки с этой проблемой как обходятся? Если им нужно найти в базе все слова с этой буквой - они получают и английские и турецкие слова верно? А какой человек в здравом уме и твердой памяти будет искать слово только по одной букве? :)

И букв A на самом деле вовсе не одна пара в сегодняшнем юникоде. Их там намного больше :)
...
Рейтинг: 0 / 0
Multi Languages
    #32806966
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПоместить в базу данных несколько текстов на разных языках, найти в базе нужный текст и показать его на экране. Так?

авторЧем тебя смущает турецкая i? Тем что она в применяющемся сегодня 255-вариантном шрифте совпадает по коду с английской i? Турки с этой проблемой как обходятся? Если им нужно найти в базе все слова с этой буквой - они получают и английские и турецкие слова верно? А какой человек в здравом уме и твердой памяти будет искать слово только по одной букве?

английская i == турецкая i (как по написанию, так и по коду), но их uppercase-ы не соответствуют друг другу, т.е. если будет список слов на турецком и на английском, то осуществить поиск слов на двух языках, записанных в разных/меняющихся регистрах без дополнительного указания языка будет проблематично.

Вот пример, который показывает, что ТОЛЬКО юникодом правильный поиск произвести не удастся:
даны записи в таблице table1:

name
--------
exists
isim
EXISTS
İSİM
---------

запрос
select name from table where name like '%is%'
не выведет запись İSİM.

Скопируйте текст в текстовый процессор и сделайте поиск фразы is, вы не найдете слово İSİM.
Нажмите Shift+F3 - и весь текст будет испорчен: поскольку правило замены будет i->I, хотя для меня важно i->İ

...
Рейтинг: 0 / 0
Multi Languages
    #32807026
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Э, горячие финские парни, завязывайте здесь с обсуждением UNICODE как такового.
...
Рейтинг: 0 / 0
Multi Languages
    #32807038
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivЭ, горячие финские парни, завязывайте здесь с обсуждением UNICODE как такового.

Есть!, товарищ зам.зам.глав.модератора!
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Multi Languages
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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