Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
 Аватар для 6elka1703
91 / 85 / 27
Регистрация: 29.10.2016
Сообщений: 928

Добавление записей в БД

20.03.2018, 22:45. Показов 2099. Ответов 47
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добавляю записи в таблицу через хранимую процедуру
SQL
1
2
3
4
5
ALTER PROC [dbo].[Insert_customers]
@name VARCHAR(40), @adres VARCHAR(40), @DATA VARCHAR(50), @phone VARCHAR(40)
AS
INSERT INTO Customers( fio, adres, data_birthday, telephone)
VALUES(@name,@adres,@DATA,@phone)
вот код delphi
Delphi
1
2
3
4
5
6
ADoQuery3.SQL.Text:='exec insert_customers @name=:n, @adres=:a, @date=:d, @phone=:p';
ADOQuery3.Parameters.ParamByName('n').Value:=sEdit3.Text;
ADOQuery3.Parameters.ParamByName('a').Value:=sEdit2.Text;
ADOQuery3.Parameters.ParamByName('d').Value:=sEdit1.Text;
ADOQuery3.Parameters.ParamByName('p').Value:=sMaskEdit1.Text;
ADOQuery3.Active:=true;
когда нажимаю кнопку добавить выскакивает ошибка что процедура insert_customers ожидает параметр @data который не был указан. Хотя я вроде указал его. В чем ошибка?

Добавлено через 2 минуты
Ошибку понял неправильно написал параметр. Моя невнимательность меня погубит)

Добавлено через 45 минут
еще вопросик после нажатия на кнопку выскочила ошибка
project raised exception class EDatabaseError with message 'Adoquery :CommandText does not return a result set'
Но запись в базу добавилась, тогда из за чего ошибка?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.03.2018, 22:45
Ответы с готовыми решениями:

База данных на основе массива записей: добавление, удаление, поиск записей
Комрады, учусь асму, а некоторые моменты не осиливаю :( задача в реализовании некой базы данных с записями "фамилия",...

Добавление записей невозможно: ключ связи таблицы не входит в набор записей
Люди помогите пожалуйста. Есть база данных с 4 таблицами. Есть форма, на ней располагается подчиненная форма с полями и полем со...

Добавление записей невозможно: ключ связи таблицы не входит в набор записей
Здравствуйте! Возникла проблема при заполнении формы основанной на запросе. Как можно исправить? Читал уже другие темы с...

47
6003 / 4578 / 1096
Регистрация: 29.08.2013
Сообщений: 28,275
Записей в блоге: 3
28.03.2018, 17:51
Студворк — интернет-сервис помощи студентам
ошибку опять телепатировать?
0
 Аватар для 6elka1703
91 / 85 / 27
Регистрация: 29.10.2016
Сообщений: 928
28.03.2018, 17:56  [ТС]
qwertehok, пока не надо попробую сам переделать

Добавлено через 4 минуты
qwertehok, сделал так
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
ADOQuery3.SQL.Clear;
id:=ADOQuery3.SQL.Add('select id_customer from Customers where fio=:nam');
ADOQuery3.Parameters.ParamByName('nam').Value:=sEdit3.Text;
ADOQuery3.ExecSQL;
 
ADOQuery3.SQL.Clear;
ADOQuery3.SQL.Add('INSERT INTO buy(id_customer,data_buy, id_session,cost_all_tickets, number_buy_tickets)');
ADOQuery3.SQL.Add('values(:newF,:newW,:newL,:newm,:newk)');
ADOQuery3.Parameters.ParamByName('newF').Value:=id;
ADOQuery3.Parameters.ParamByName('newW').Value:=DateToStr(Date);
ADOQuery3.Parameters.ParamByName('newL').Value:=sDBGrid2.DataSource.DataSet.Fields[3].asString;
ADOQuery3.Parameters.ParamByName('newm').Value:=StrToInt(sEdit4.Text);
ADOQuery3.Parameters.ParamByName('newk').Value:=StrToInt(sEdit4.Text);
ADOQuery3.ExecSQL;
ошибку не выдает но и в базу не добавляет. Так что телепатируйте ошибку
0
6003 / 4578 / 1096
Регистрация: 29.08.2013
Сообщений: 28,275
Записей в блоге: 3
28.03.2018, 18:13
почему в 4й строке ExecSQL?

я же писал - если запрос SELECT - то просто Open
0
 Аватар для 6elka1703
91 / 85 / 27
Регистрация: 29.10.2016
Сообщений: 928
28.03.2018, 18:18  [ТС]
qwertehok, блин забыл

Добавлено через 2 минуты
qwertehok, все равно не добавляет запись
0
6003 / 4578 / 1096
Регистрация: 29.08.2013
Сообщений: 28,275
Записей в блоге: 3
28.03.2018, 18:23
первый запрос то выполняется?
0
 Аватар для 6elka1703
91 / 85 / 27
Регистрация: 29.10.2016
Сообщений: 928
28.03.2018, 18:35  [ТС]
qwertehok, первый запрос не выполняется, переменная id как была 0 так и осталась
0
6003 / 4578 / 1096
Регистрация: 29.08.2013
Сообщений: 28,275
Записей в блоге: 3
28.03.2018, 18:38
Лучший ответ Сообщение было отмечено 6elka1703 как решение

Решение

блин
я слепой какой

Delphi
1
2
3
4
5
ADOQuery3.SQL.Clear;
ADOQuery3.SQL.Add('select id_customer from Customers where fio=:nam');
ADOQuery3.Parameters.ParamByName('nam').Value:=sEdit3.Text;
ADOQuery3.Open;
id:=ADOQuery3.Fields[0].asInteger;
совсем не выспался(
1
 Аватар для 6elka1703
91 / 85 / 27
Регистрация: 29.10.2016
Сообщений: 928
28.03.2018, 18:43  [ТС]
qwertehok, спасибо,помогло
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.03.2018, 18:43

Добавление новых записей невозможно, ключ связи таблицы не входит в набор записей
Не могу добавить данные в поля, выводит такое сообщение: Добавление новых записей невозможно,ключ связи таблицы ЧЕК не входит не входит в...

Формы: добавление новых записей и удаление записей
у меня следующая форма (приложение) добавила кнопки добавление новых записей, удаление записей, вроде работает, нужно ли для них писать...

Удаление всех записей из DataGridView и добавление записей
Всем доброго времени суток. Столкнулся со следующей проблемой: написал код на удаление строк DataGridView. Строки удаляет но не все, а...

простая база с одним полем (оно же ключ), но много записей. как максимально быстро организовать проверку и добавление пакета новых записей?
есть простейшая БД (с одним полем), состоящая из уникальных строковых ключей, типа: SDPT234ddfs4545FFqsdfs TXB2ZQ5d ...

Добавление записей
Здравствуйте, пытаюсь добавить строчку, но постоянно выдает ошибку Required field(s) is missing" в файле db_config находится...


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

Или воспользуйтесь поиском по форуму:
48
Ответ Создать тему
Новые блоги и статьи
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru