powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Перевод символов в справочниках
14 сообщений из 14, страница 1 из 1
Перевод символов в справочниках
    #34365362
Sharkow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, как решить следующую задачу. БД ASA 9.0.2.2452. Есть например справочник сплавов, в нем наименования сплавов TI-6AL-4V и ТI-6АL-4V две совершенно одинаковые по смыслу записи, но в одной буква Т русская, а в другой английская. Как на уровне базы избавиться от такой ситуации? Какие пути решения существуют?
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34365405
Серж
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На уровне базы никак... Надо самому писать процедуру, которая будет проверять имена и показывать "дубликаты". Дубли потом надо свести в одну запись.
А при вводе новых запретить ввод на русском языке.
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34365414
Sharkow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не верю... тем более что решение какое то однобокое... сплавы на русском тоже имеют место быть. Хочу услышать совет гуру )
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34365415
Серж
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. сама субд сейчас никак не исправит ситуацию. А если нужно исключить появление новых "дублей", то
1) написать хр. функцию, которая будет брать строку и заменять в ней все русские буквы на латинские: русскую К - на англ. К, русскую З (зэ) - на тройку и т.д.
2) на таблицу повешать триггер на insert, update и в нем для марки сплава вызывать функцию 1
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34365423
Серж
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sharkowсплавы на русском тоже имеют место быть.

Тогда надо сначала описать правила именования сплавов.
Вариантов два:
1) В наименовании могут быть только латинские буквы или только русские буквы.
2) В наименовании могут быть и латинские и русские буквы.
Второй может быть уточнен...

Ладно, сейчас столичные гуру проснуться и ответят.
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34365558
_kvs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно еще в софте предсмотреть списки значений полей, чтобы пользователь
выбирал их, а не набирал вручную, так будет меньше ошибок
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34365620
Sharkow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_kvsможно еще в софте предсмотреть списки значений полей, чтобы пользователь
выбирал их, а не набирал вручную, так будет меньше ошибок
Смешно... если бы списки были за ранее известны то и проблемы бы небыло.
Списки за ранее не известны. Справочник формируется по мере поступления новых заказов.
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34365834
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тебе надо в клиенте, это поле организовывать как автозаполнение, при этом пытаться огранизовывать запрос считая, что введенный символ может быть как русским, так и латинским.
А вообще-то, кроме наименования у них есть еще и другие параметры, их то же следовало бы проверять при заносе в справочник...
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34366002
Sharkow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey OrlovТебе надо в клиенте, это поле организовывать как автозаполнение, при этом пытаться огранизовывать запрос считая, что введенный символ может быть как русским, так и латинским.
А вообще-то, кроме наименования у них есть еще и другие параметры, их то же следовало бы проверять при заносе в справочник...

Я не спрашиваю как организовать это на клиенте...
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34366340
Rubber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Раз уж "наименования сплавов TI-6AL-4V и ТI-6АL-4V две совершенно одинаковые по смыслу записи", то <Серж> правильно говорит, необходимо определится с правилами именования сплавов, и привести таблицу в порядок (избавиться либо от рус , либо от англ символов). И далее запросы будут отрабатывать однозначно.

А если "в лом" (или нет возможности) решай проблему при отработке select или рехтуй результат на клиенте.

Через select - имеется ввиду замену ненужных букв на нужные в самом запросе (или х.п.),
но это опять таки требует опредилиться с правилами именования :)
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34367673
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sharkow Sergey OrlovТебе надо в клиенте, это поле организовывать как автозаполнение, при этом пытаться огранизовывать запрос считая, что введенный символ может быть как русским, так и латинским.
А вообще-то, кроме наименования у них есть еще и другие параметры, их то же следовало бы проверять при заносе в справочник...

Я не спрашиваю как организовать это на клиенте...
Я к тому, что ты сейчас приведешь базу в соответствии, а потом снова начнутся проблемы.
У меня было нечто подобное, когда через п*** вводились клиенты. Девочка ручками ставила, что клиенты такие-то, такие-то это один и тот же клиент... И так было пока не организовали в клиенте автозаполнение сокращенного наименования. Кстати, пытались решить данную вещь используя мощь SQL-сервера, триггеры вешали, обработку вводили, безрезультатно, в конце месяца при формировании итогов, все равно радактировать приходилось...
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34368932
Серж
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот вживят всем ИД-чипы, вот непыльная тогда работенка у прогарммеров будет... никаких заморочек с клиентами, фио... пришел человек, ридером его раз... и все однозначно, никаких двойников
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34372923
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возьми все буквы с одинаковым начертанием и перекодируй их в наименовании либо в лат, либо в рус (+ приведи к верхнеми/нижнему регистру, если нет регистронезависимости, + удали все пробелы, + если это возможно, удали всякие тире и прочие не алфавитно-цифровые знаки). Полученное значение помести в отдельное поле (можно создать новую таблицу со ссылкой на записи старой) и по нему анализируй дубликаты (уникальный индекс + триггеры), тогда можно обойтись практически без вмешательства в клиентскую часть. Кривовато все равно будет - по части сортировок, но двойников не будет.
...
Рейтинг: 0 / 0
Перевод символов в справочниках
    #34374328
Фотография A.K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
offtop: Это обсуждение напомнило мне давний случай, когда я писал утилиту загрузки данных из какой-то государственной системы. В файлах, которые мне выгружали из этой системы, в фамилиях, именах и отчествах все буквы русского алфавита, одинаковые по начертанию с латинскими, были заменены на латинские. Помнится, я некоторое время ломал голову, почему же у меня данные не подгружаются на тех людей, которые уже есть в базе, а вместо этого в моей базе все время появляются новые люди.
В общем, не забывайте о возможных последствиях и неудобствах при таком подходе.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Перевод символов в справочниках
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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