Текущий архив: 2007.05.13;
Скачать: CL | DM;
Вниз
не разрешить вставку дубрирующей записи в БД Найти похожие ветки
← →
Choco © (2007-03-14 16:22) [0]Проблема такая: есть база данных .db,база содержит паспортные данные. как запретить ввод в эту базу нескольких человек с одинаковым ФИО?
← →
Reindeer Moss Eater © (2007-03-14 16:24) [1]Повесить табличку на стену перед глазами оператора:
"Категорически запрещается вводить нескольких человек с одинаковыми ФИО"
← →
zdm © (2007-03-14 16:30) [2]проверяй запросом на схожесь ;))
← →
Аноним (2007-03-14 16:35) [3]Такие вещи надо закрывать на уровне базы
например уникальным индексом
← →
Reindeer Moss Eater © (2007-03-14 16:41) [4]А когда придет второй Иванов Иван Иванович, лезть в БД и отключать уникальный индекс.
← →
zdm © (2007-03-14 16:41) [5]
> Аноним (14.03.07 16:35) [3]
> Такие вещи надо закрывать на уровне базынапример уникальным
> индексом
Иванов и иванов, а тем более ИвАнов Сидр петрОвич---разные вещи ;)
← →
zdm © (2007-03-14 16:44) [6]можно только проверять на схожесть запрос на LIKE AnsiUpperCase or AnsiLowCase и если есть похожесть -предупреждать юзера. а дальше -дело личное
← →
Аноним (2007-03-14 16:47) [7]
> Reindeer Moss Eater ©
А это неважно, по условию задачи второго Иванова в базу не пуЩать, а гнать в три шеи
← →
Reindeer Moss Eater © (2007-03-14 16:48) [8]Глупости все это.
Во первых полные тёзки существуют.
Во вторых индексы и хитроумные проверки как правило не помогают. Ибо жизнь мудрее самого мудрого программера.
Юзер может ввести "Иванов" и "Ивaнов" вообще не подозревая, что ввел две разных строки.
← →
zdm © (2007-03-14 16:49) [9]
> Reindeer Moss Eater © (14.03.07 16:48) [8]
так вот и говорю про предупреждения, ну хоть как-то мож задумается, не вводит он того, кто уже есть.
← →
zdm © (2007-03-14 16:49) [10]
> Reindeer Moss Eater © (14.03.07 16:48) [8]
Тёзки с одинаковыми паспортными данными? ;)))
← →
Reindeer Moss Eater © (2007-03-14 16:50) [11]как запретить ввод в эту базу нескольких человек с одинаковым ФИО?
← →
Аноним (2007-03-14 16:50) [12]
> zdm ©
В случае работы с *.db это со стопроцентной надежностью все равно не разрулить.
← →
Knight © (2007-03-14 16:52) [13]
> [10] zdm © (14.03.07 16:49)
> Тёзки с одинаковыми паспортными данными? ;)))
как запретить ввод в эту базу нескольких человек с одинаковым ФИО?
Про паспорт там ничего нет... даже про его уникальный серия-номер..
← →
zdm © (2007-03-14 16:54) [14]Choco © (14.03.07 16:22)
Проблема такая: есть база данных .db,база содержит паспортные данные.
← →
zdm © (2007-03-14 16:55) [15]да это уже лирика пошла, можно конечно , хотя от "дурака" ни кто не застрахован!!!
← →
Knight © (2007-03-14 16:58) [16]
> [14] zdm © (14.03.07 16:54)
> Проблема такая: есть база данных .db,база содержит паспортные
> данные.
Не важно, что имеется.. важно что требуется :)
← →
zdm © (2007-03-14 17:00) [17]
> Knight © (14.03.07 16:58) [16]
сказл-же что дальше уже лирика пошла, советы дали.
← →
Knight © (2007-03-14 17:00) [18]Дальше пошёл флуд... :)
← →
zdm © (2007-03-14 17:01) [19]
> Knight © (14.03.07 16:58) [16]
по этому и не стал сразу на это внимание обращать!!! про индексы в обще лажа, что-бы фио индексировать---круто!!!
← →
zdm © (2007-03-14 17:01) [20]
> Knight © (14.03.07 17:00) [18]
как всегда ;)
← →
Choco © (2007-03-14 17:06) [21]поглумиться-поглумились а проблема осталась без решения...
← →
Knight © (2007-03-14 17:08) [22]Создаёшь три поля Ф И О ... и делаешь по ним уникальный индекс...
← →
Knight © (2007-03-14 17:12) [23]Или перед каждым добавлением записи.. делаешь выборку по Ф И О.. если не ноль... то человек идёт лесом, ибо тёски тут не нужны.
← →
zdm © (2007-03-14 17:12) [24]
> Choco © (14.03.07 17:06) [21]
как без решения-то? у тебя есть фио, проверяй на схожесть,,,больше по моему никак?
sql.add("select fio from qqq where fio LIKE :"+ quotedstr(AnsiUpperCase(edit_fio.text))+" or fio LIKE:" quotedstr(AnsiLowerCase(edit_fio.text));
if field[0].asstring<>"" then такая фама уже есть
простите не с проекта тянул, по ходу написал, но примерно так
← →
Аноним (2007-03-14 17:13) [25]
> zdm ©
> про индексы в обще лажа
Обоснуйте, почему это про индексы лажа, а сажать проверки на клиентскую сторону (при этом любой другой клиент впишет в базу хоть 23 иванова) - не лажа?
← →
Knight © (2007-03-14 17:16) [26]И поля отдельные и обязательные к заполнению...
Страницы: 1 вся ветка
Текущий архив: 2007.05.13;
Скачать: CL | DM;
Память: 0.52 MB
Время: 0.053 c