Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 15.11.2016
Сообщений: 40
1

Ошибка с добавлением в БД

29.05.2017, 00:10. Показов 1237. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
У меня есть таблица в тремя полями: Шифр издания, Название, Цена (руб.). Есть и три TEdit и одна кнопка.

Мне нужно сделать так, чтобы я ввел данные в эти три поля, а по нажатию на Button они заносились в таблицу

C++
1
2
3
4
5
6
7
8
9
void __fastcall TForm3::Button1Click(TObject *Sender)
{
ADOQuery1->Active=false;
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("INSERT INTO `dbname`.`edition` (`Шифр издания`, `Название`, `Цена (руб.)`) VALUES ('" + Edit1->Text + "', '" + Edit2->Text + "', '" + Edit3->Text + "')");
ADOQuery1->ExecSQL();
ADOQuery1->Active=true;
DBGrid1->Refresh();
}
Собственно сама ошибка
Ошибка с добавлением в БД


При этом запись в БД появилась, проверил в phpmyadmin. А если говорить о программе, то при ошибке я нажимаю ОК и вижу пустой dbgrid.

Как это можно решить?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.05.2017, 00:10
Ответы с готовыми решениями:

Ошибка с добавлением RowCount
помогите откомпилировать проект нормально?

Ошибка с добавлением записей
В курсаче есть кусочек с продажами. Действия: открытие формы "Продажа покупателям", дальше...

Ошибка с добавлением данных в БД
Доброго времени суток! Перед созданием этой темы, перерыл весь интернет, но ответа так и не нашел. ...

Игра змейка. Ошибка с добавлением нового тела
Добрый вечер, возникла проблема при создании игры змейка(да-да). Необходимо создавать (в коде java)...

10
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
29.05.2017, 00:32 2
1. Переименовать все поля на латинницу.
2. Для добавления данных в таблицу использоватть параметризированный запрос.
3. Для того что бы увидень добавленные данные, необходимо использоватть запрос с оператором SELECT.
0
0 / 0 / 0
Регистрация: 15.11.2016
Сообщений: 40
29.05.2017, 00:35  [ТС] 3
Sasha, можно подробнее про 3? Я ведь до добавления вижу данные в dbgrid, просто после добавления dbgrid становится пустым, но в таблицу новые данные внесены
0
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
29.05.2017, 00:39 4
В гриде новые данные ты не увидешь,по ка не сделаешь запрос на открытие таблицы.
0
0 / 0 / 0
Регистрация: 15.11.2016
Сообщений: 40
29.05.2017, 00:42  [ТС] 5
Sasha, сразу после запроса с добавлением?
0
управление сложностью
1687 / 1300 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
29.05.2017, 08:30 6
Цитата Сообщение от innomirov Посмотреть сообщение
сразу после запроса с добавлением?
Да, после добавления/удаления записи нужно "обновить" таблицу
0
0 / 0 / 0
Регистрация: 15.11.2016
Сообщений: 40
29.05.2017, 23:00  [ТС] 7
Почтальон, спасибо, а не подскажите каким образом?
0
управление сложностью
1687 / 1300 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
30.05.2017, 07:41 8
Цитата Сообщение от innomirov Посмотреть сообщение
не подскажите каким образом?
Выбрать все записи и отобразить их в dbgrid
1
0 / 0 / 0
Регистрация: 15.11.2016
Сообщений: 40
30.05.2017, 10:25  [ТС] 9
Почтальон, а с кодом не поможете?
0
управление сложностью
1687 / 1300 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
30.05.2017, 10:27 10
Лучший ответ Сообщение было отмечено Почтальон как решение

Решение

На коленке:
C++
1
2
3
4
5
6
ADOQuery1->Active=false;
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("SELECT * From ИмяВашейТаблицы");
ADOQuery1->ExecSQL();
ADOQuery1->Active=true;
DBGrid1->Refresh();
0
0 / 0 / 0
Регистрация: 15.11.2016
Сообщений: 40
30.05.2017, 15:52  [ТС] 11
Почтальон, спасибо, помогло!
0
30.05.2017, 15:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.05.2017, 15:52
Помогаю со студенческими работами здесь

Проблемма с добавлением в БД , Ошибка синтаксиса в инструкции INSERT INTO
Не пойму как добавить в бд

Ошибка при стилизации input[type="file"] с добавлением JS
Здравствуйте! Новичок в JS поэтому очень нужна помощь. Есть такой маленький код JS: <script...

Ошибка с добавлением даты: "Неправильный синтаксис .2012"
в общем при выполнении запроса на добавление выдает ошибку на добавление даты......Ошибка:...

Проблема с добавлением.
Всем привет. проблема вот такая не могу добавить данные в таблицу Access.. При попытке добавление...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru