Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
1 / 1 / 2
Регистрация: 09.03.2012
Сообщений: 63
1

Запрет ввода повторяющихся значений в Access

03.05.2013, 13:05. Показов 1839. Ответов 1
Метки нет (Все метки)

Здравствуйте. Есть программа и в ней есть авторизация и регистрация пользователей. В регистрации указывается логин, пароль, должность. Информация о пользователях находится в Access. Чтобы запретить регистрировать пользователя с ником, который был уже раньше зарегистрирован(занят), я сделал поле 'Логин' в БД ключевым. Но при регистрации в программе мне выбивает ошибка - "Изменения не были успешно внесены из-за повторяющихся значений в индексе ключевых полях или связях. Измените данные в поле или полях, содержащих повторяющиеся значения, удалите индекс или переопредилите его, чтобы разрешить повторяющиеся значения, и повторите попытку!"/
Как можно или программно запретить ввод повторяющихся значений, или чтоб выдавало ошибку с моим текстом?
Спасибо!
Вот код регистрации:
C++
1
2
3
4
5
6
7
8
9
10
11
12
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("INSERT INTO Пользователи (Логин, Пароль, Должность)");
ADOQuery1->SQL->Add("VALUES (:Param1, :Param2, :Param3)");
ADOQuery1->Parameters->ParamByName("Param1")->Value = Form3->Edit1->Text;
ADOQuery1->Parameters->ParamByName("Param2")->Value = Form3->Edit2->Text;
ADOQuery1->Parameters->ParamByName("Param3")->Value = Form3->Edit3->Text ;
ADOQuery1->ExecSQL();
MessageBox (0,"Новый пользователь добавлен","Успех",0);
Edit1->Text="";
Edit2->Text="";
Edit3->Text="";
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.05.2013, 13:05
Ответы с готовыми решениями:

Запрет ввода в форму повторяющихся значений
Подскажите как организовать запрет ввода в форму повторяющихся значений не на уровне таблицы в...

Запрет ввода повторяющихся данных
Уважаемые Гуру помогите пожалуйста. Есть база данных, форма в ACCESS на компе, таблицы на серваке...

Запрет ввода повторяющихся данных
Допустим у меня есть справочник улиц, как запретить добавление уже имеющейся в этом списке улицы!...

Запрет вывода повторяющихся значений
В упрощенном виде есть такая вещь: 2 таблицы Предметы и Семестры: Предметы Id предмета...

1
1566 / 502 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
04.05.2013, 06:08 2
Sera_tovt, учитывая, что информация о логине вводится в Edit1->Text:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("SELECT Логин FROM Пользователи WHERE Логин = :login");
ADOQuery1->Parameters->ParamByName("login")->Value = Form3->Edit1->Text;
ADOQuery1->SQL->Open();
 
if (!ADOQuery1->RecordCount){
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("INSERT INTO Пользователи (Логин, Пароль, Должность)");
ADOQuery1->SQL->Add("VALUES (:Param1, :Param2, :Param3)");
ADOQuery1->Parameters->ParamByName("Param1")->Value = Form3->Edit1->Text;
ADOQuery1->Parameters->ParamByName("Param2")->Value = Form3->Edit2->Text;
ADOQuery1->Parameters->ParamByName("Param3")->Value = Form3->Edit3->Text ;
ADOQuery1->ExecSQL();
MessageBox (0,"Новый пользователь добавлен","Успех",0);
Edit1->Text="";
Edit2->Text="";
Edit3->Text="";
}
else {
MessageBox (0,"Такой логин уже существует","Ошибка",0);
Edit1->Text="";
Edit1->SetFocus();
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.05.2013, 06:08

Запрет повторяющихся значений реквизита справочника
Существует справочник Клиенты с реквизитом Телефон. Как можно запретить дублирование данного...

Запрет ввода имеющихся значений
Как сделать так , что при вводе в edit , имеющихся уже в столбце StringGrid, значений (т.е.,...

Запрет ввода значений в ComboBox
Здравствуйте! Как в combobox'е сделать так, чтобы пользователь не мог вводить значения, отличные...

Триггер на запрет ввода пустых значений
Создать триггер на запрет ввода пустых значений в наименовании груза

Запрет ввода своих значений в TComboBox
Как тут запретить ввод своих значений в комбобокс чтобы можно было лишь выбирать из предложенных...

Обработка повторяющихся значений (access+delphi)
Всем привет! БД в access. Обращение через ADO. Подскажите как вывести сообщение пользователю...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.