Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Создание ключа по фамилии / 8 сообщений из 8, страница 1 из 1
14.12.2005, 08:02
    #33434653
Iron MAn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ключа по фамилии
Необходим алгоритм создания уникального ключа по фамилии
Применяемый в авия/жд перевозках
Фамилия, Имя, Отчество-->IDxxxx
...
Рейтинг: 0 / 0
14.12.2005, 08:21
    #33434681
Владимир СА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ключа по фамилии
Iron MAnНеобходим алгоритм создания уникального ключа по фамилии
Применяемый в авия/жд перевозках
Фамилия, Имя, Отчество-->IDxxxxА если Фамилия, Имя, Отчество совпадает полностью с другим челавеком, а даты рождения или место рождения разные???
...
Рейтинг: 0 / 0
14.12.2005, 08:41
    #33434707
Iron MAn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ключа по фамилии
В среднем какой либо чел. числится и на другом предприятии(организации)
Индекс (Ключ) должен быть уникален для ~100 000 записей
А также по ключу ищется (фильтруется) Фамилия
...
Рейтинг: 0 / 0
14.12.2005, 10:16
    #33434900
Петров Андрей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ключа по фамилии
m.id='ID'+Upper(allt(f_name)+allt(l_name)+allt(s_name))

Далее выбираем по ключу

select * from data where Unique_ID='IDПЕТРОВ'

По полю Unique_ID делаем индекс...

ЗЫ Бредовый способ... Распишите алгоритм который есть в ЖД. Не все же с ним знакомы.
...
Рейтинг: 0 / 0
14.12.2005, 11:46
    #33435188
foxwizard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ключа по фамилии
Ключ НЕ должен нести никакой смысловой нагрузки.
Чем плох обычный числовой ключ?
...
Рейтинг: 0 / 0
14.12.2005, 12:20
    #33435293
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ключа по фамилии
foxwizardКлюч НЕ должен нести никакой смысловой нагрузки.
Чем плох обычный числовой ключ?
Совсем не обязательно! Суррогатный первичный ключ (Primary Key) вводится только в том случае, если нет подходящего поля (или комбинации полей) таблицы, которые могли бы претендовать на роль Primary Key.
С уважением, Алексей.
...
Рейтинг: 0 / 0
14.12.2005, 14:40
    #33435813
Петров Андрей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ключа по фамилии
Точнее их может быть 2. Так называемый открытый - как в данном случае т.е. для общего пользования и закрытый т.е. обычный автоинкрементный ключ. Например как в справочниках 1С. (правда там закрытых нету :-) почти )

ЗЫ Может термины перепутал с несим шифрованием но суть такая. :-)
...
Рейтинг: 0 / 0
15.12.2005, 02:16
    #33436961
Igor Korolyov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ключа по фамилии
Hi Iron MAn!

Посчитай MD5 хеш от строки "сцепляющей" ФИО и прочие интересующие тебя
реквизиты (дату рождения например, пол, потолок :) ) - достаточно уникально
получится - правда по размеру великовать - в "читабельном" (не бинарном)
виде это будет либо 32, либо 22 знака (если переводить "просто" в HEX, и
если завернуть в BASE64 соответственно).
КОНЕЧНО идентичные наборы
ФИО+дата_рождения+что_ты_туда_ещё_захочешь_добавить дадут одинаковый ключ -
а вот для разных наборов вероятность получения дубля весьма невелика.
Если размер уж совсем никак не устраивает - используй не MD5, а другой,
более "короткий" алгоритм хэширования - CRC32 - всего 4 байта бинарных
данных - т.е. в читабельном виде это 8 либо 6 символов... Правда вероятность
получить дубли даже при разных ФИО - уже весьма велика - где-то 70% за то,
что будет хотя-бы 1 дубль среди 100000 записей... Для хэша размером хотя-бы
в 8 байт (бинарного представления) вероятность уже исчисляется миллиардными
долями процента :) Т.е. уже вполне надёжно.

P.S. Надёюсь что теперь не последует банальный вопрос как посчитать MD5 хеш
:) Т.к. на него есть банальный ответ - пользуйтесь поиском :)

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Создание ключа по фамилии / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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