|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.08.2012, 17:50 | #1 |
Регистрация: 28.04.2010
Сообщений: 6
|
Запрет ввода уникальной записи.
Ребята помогите мне сделать так чтобы пользователь не смог добавить ещё одну уникальную запись в базу сделанную в Accesse. В базе Accesse я сделал нужный столбец уникальным но при добавление одинаковой уникальной записи через Delphi выскакивает ошибка что запись уникальна но при это добавляться в DBGrid т.е. в базу. Как мне это предотвратить и выдавать сообщение что такая запись есть. Использую компоненты ADOConnection1, ADOQuery1, DataSource1, DBGrid1, BitBtn1 и т.д. Поля: уникальное числовое поле - Табельный_номер,текстовое поле - Фио, числовое поле - Лет.
|
07.08.2012, 17:55 | #2 |
Старожил
Регистрация: 25.08.2011
Сообщений: 2,841
|
Перед добавлением сделайте SELECT на предмет наличия записи,
Либо другой вариант более правильный, но более сложный - использование транзакций. В случае ошибки откатывать полностью транзакцию и запись добавлятся не будет. А пользователю сообщать что запись уже есть.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два. |
07.08.2012, 18:00 | #3 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Если в базу то значит неверно создал уникальность.
I'm learning to live...
|
|
07.08.2012, 18:09 | #4 |
Регистрация: 28.04.2010
Сообщений: 6
|
А есть какой нибудь простой пример для наглядности?
|
07.08.2012, 18:11 | #5 |
Старожил
Регистрация: 25.08.2011
Сообщений: 2,841
|
пример чего?? селекта???
SELECT * FROM MyTable WHERE ColumnName = "MyVal"; Если вернется больше чем 0 значит запись уже есть.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два. |
07.08.2012, 18:17 | #6 |
Регистрация: 28.04.2010
Сообщений: 6
|
WorldMaster спасибо тебе большое но один вопрос а что означает - MyVal?
|
07.08.2012, 18:19 | #7 |
Старожил
Регистрация: 25.08.2011
Сообщений: 2,841
|
Значение которое тебе нужно найти в столбце ColumnName
Сюда свои данные подставляй.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Запрет ввода в Edit | Matrix6993 | Мультимедиа в Delphi | 17 | 12.10.2013 12:04 |
Запрет ввода букв | Евгений Уральский | Microsoft Office Excel | 19 | 19.09.2012 12:06 |
Запрет нажатия кнопки и запрет неправильного ввода данных | De_Kurlzz | Помощь студентам | 1 | 15.06.2011 15:14 |
Запрет ввода с клавиатуры | DoGFoX | Помощь студентам | 5 | 16.06.2010 23:40 |
Как сделать запрет ввода букв в поле для ввода input | zvezda_t | PHP | 1 | 27.12.2009 22:02 |