3 / 3 / 0
Регистрация: 30.05.2009
Сообщений: 46
|
|
1 | |
Проверки в БД18.01.2011, 19:33. Показов 1607. Ответов 8
Метки нет (Все метки)
Есть бд, в этой бд есть таблица которая выводится в DBGrid, как сделать проверку на уникальность например поля ФИО в этой таблице? Надо чтобы выдавалась ошибка типо "человек с таким ФИО уже существует".
0
|
18.01.2011, 19:33 | |
Ответы с готовыми решениями:
8
Какие проверки (кроме проверки неравенства делителя нулю) нужно выполнять перед делением Создать скрипты для обновления системы, проверки её на вирусы, дефрагментации диска и проверки его на ошибки Написать пакетный файл для запуска утилиты проверки диска и вывода в файл статистики проверки проверки |
31 / 31 / 11
Регистрация: 30.06.2009
Сообщений: 148
|
||||||
18.01.2011, 20:08 | 2 | |||||
пусть таблица - table, поле F_FAM, тогда кидай на форму кверик и в sql пиши -
0
|
3 / 3 / 0
Регистрация: 30.05.2009
Сообщений: 46
|
|
18.01.2011, 20:22 [ТС] | 3 |
Не ты походу меня не понял) в таблице уже есть фамилии, надо чтобы при добавление в таблиу новой записи ФИО не повторялось, например есть в таблице Иванов, если еще раз ввести Иванов и попытаться добавить эту запись, то тогда была бы ошибка.
0
|
31 / 31 / 11
Регистрация: 30.06.2009
Сообщений: 148
|
|
18.01.2011, 20:24 | 4 |
Походу я тебя понял как раз-таки правильно...
Как раз запрос и выдаст ошибку, если фамилия Иванов уже будет в таблице...
0
|
3 / 3 / 0
Регистрация: 30.05.2009
Сообщений: 46
|
|
18.01.2011, 20:46 [ТС] | 5 |
Короче, у меня на форме есть таблица которая связана с DBGrid, в гриде выводятся все поля этой таблице, там есть например поле ФИО, в этом поле уже имеется некоторые Фамилии, например Иванов, Сидоров и т.д. ФИО я добавляю через edit, если в edit ввести ФИО "Иванов" и добавить эту запись то должна появиться ошибка, потому что Иванов уже есть.
0
|
1 / 1 / 0
Регистрация: 15.01.2011
Сообщений: 13
|
|
18.01.2011, 20:52 | 6 |
Таблица, наверное, не на форме, а в базе данных?
Сделайте уникальный ключ по полю ФИО.
0
|
31 / 31 / 11
Регистрация: 30.06.2009
Сообщений: 148
|
|
18.01.2011, 20:56 | 7 |
Я так понимаю, что под таблицей подразумевается ADOTable.
Тогда необходимо сделать корректную обработку исключительной ситуации, чтобы пользователя не пугать. advokat, на onChange у Edit'a ставь проверку. Добавь на форму ADOQuery, в текст запроса пропиши мою sql'ьку. Теперь при вводе ФИО ADOQuery будет просматривать на их наличие в таблице. Есть он встретит такую комбинацию - выдаст предупреждение, что такие ФИО уже есть! Не могу понять, какой момент у тебя вызывает трудность.
1
|
3 / 3 / 0
Регистрация: 30.05.2009
Сообщений: 46
|
|
18.01.2011, 23:30 [ТС] | 8 |
я просто не очень понимаю sql)) Сорри если что то не так)
Добавлено через 18 минут Нет, под таблицей понимается не ADOtable, а table(DBtables) Добавлено через 46 минут Мне нужна простая проверка, но при этом работающая и не через sql, чисто вот эту проверку осталось сделать и я сдам)
0
|
31 / 31 / 11
Регистрация: 30.06.2009
Сообщений: 148
|
|
18.01.2011, 23:43 | 9 |
тогда вешай первичный индекс, поддержу NatalyaS, на поле с ФИО и через TRY EXCEPT смотри - если падает ошибка выводи корректное сообщение, что такие ФИО уже существуют.
0
|
18.01.2011, 23:43 | |
18.01.2011, 23:43 | |
Помогаю со студенческими работами здесь
9
проверки проверки с++ Условие проверки (if) Избавиться от проверки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |