Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2013, 19:10   #1
Кротяка
Пользователь
 
Аватар для Кротяка
 
Регистрация: 04.02.2011
Сообщений: 27
Восклицание Добавление записи в БД

Необходимо организовать ввод данных в таблицу. Сам ввод происходит, однако только 1 раз и то после ряда ошибок - сначала " " is a not integer value", затем, если понажимать на кнопку ещё пару раз, будет "Изменения не были внесены из-за повторяющихся значений в индексе и т.д."
Код:
ADOTable1->Insert();
ADOTable1->FieldByName("название_поля")->AsInteger = StrToInt(Edit1->Text);
//и так далее
ADOTable1->Post();
Также нужно чтобы добавленное поле сразу же отображалось в проекте Builder. Пробую обновить - ничего не происходит. Обновляется только при перезапуске проекта.
Подскажите, если кто нибудь знает, что с этим делать....
Кротяка вне форума Ответить с цитированием
Старый 18.05.2013, 19:59   #2
FataLL
Форумчанин
 
Аватар для FataLL
 
Регистрация: 29.01.2013
Сообщений: 319
По умолчанию

Не целое значение у тебя в Edit1. Отсюда - исключение при переводе Edit1 в целое число, после которого Post не срабатывает, таблица остаётся в состоянии вставки новой записи. Чтобы сразу отобразилось обнови датасет.
FataLL вне форума Ответить с цитированием
Старый 18.05.2013, 21:48   #3
Кротяка
Пользователь
 
Аватар для Кротяка
 
Регистрация: 04.02.2011
Сообщений: 27
По умолчанию

Цитата:
Сообщение от FataLL Посмотреть сообщение
Не целое значение у тебя в Edit1. Отсюда - исключение при переводе Edit1 в целое число, после которого Post не срабатывает, таблица остаётся в состоянии вставки новой записи. Чтобы сразу отобразилось обнови датасет.
можно программно увидеть ваш вариант? Конкретно как присвоить целое значение Edit

Последний раз редактировалось Кротяка; 18.05.2013 в 22:06.
Кротяка вне форума Ответить с цитированием
Старый 19.05.2013, 22:55   #4
Vzlom
Форумчанин
 
Регистрация: 11.02.2013
Сообщений: 155
По умолчанию

Всё верно, тут программной ошибки нет, ошибка в том что значения ключевых полей базы повторяются, если вы даже
добавляете новую запись, то код поля не меняете.
Например. Код - 1 имя Игорь, а второе вы пишите код-1 Олег. В данном случае коды повторяются!!!!
Vzlom вне форума Ответить с цитированием
Старый 19.05.2013, 23:03   #5
Vzlom
Форумчанин
 
Регистрация: 11.02.2013
Сообщений: 155
По умолчанию

Для того чтобы значения вводились сразу, напишите следующий код.
Если у вас база "таблица1", то пишите
ADOTable->Active=false;
ADOTable->Active=true;
Если конечно, вы используете элемент Table из вкладки ADO!
Этот код добавляете, в код кнопки добавления записи в бд.
А лучше скиньте ваш проект, разберемся. С вашей проблемой!!!
Vzlom вне форума Ответить с цитированием
Старый 20.05.2013, 22:44   #6
Кротяка
Пользователь
 
Аватар для Кротяка
 
Регистрация: 04.02.2011
Сообщений: 27
По умолчанию

Цитата:
Сообщение от Vzlom Посмотреть сообщение
Для того чтобы значения вводились сразу, напишите следующий код.
Если у вас база "таблица1", то пишите
ADOTable->Active=false;
ADOTable->Active=true;
Если конечно, вы используете элемент Table из вкладки ADO!
Этот код добавляете, в код кнопки добавления записи в бд.
А лучше скиньте ваш проект, разберемся. С вашей проблемой!!!
Спасибо, я уже разобрался! Ваша помощь пригодилась. Благодарю
Кротяка вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление записи в бд yuta_86 БД в Delphi 10 31.05.2013 12:09
добавление записи незнайка_на_земле Помощь студентам 6 26.10.2011 08:26
Добавление записи в бд Lokos БД в Delphi 8 15.12.2009 16:36
Добавление записи LLIYT БД в Delphi 15 09.06.2009 18:25
Добавление записи rn6hac БД в Delphi 3 02.06.2009 10:26