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

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

20.03.2018, 22:45. Показов 2028. Ответов 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
5999 / 4574 / 1096
Регистрация: 29.08.2013
Сообщений: 28,254
Записей в блоге: 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
5999 / 4574 / 1096
Регистрация: 29.08.2013
Сообщений: 28,254
Записей в блоге: 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
5999 / 4574 / 1096
Регистрация: 29.08.2013
Сообщений: 28,254
Записей в блоге: 3
28.03.2018, 18:23
первый запрос то выполняется?
0
 Аватар для 6elka1703
91 / 85 / 27
Регистрация: 29.10.2016
Сообщений: 928
28.03.2018, 18:35  [ТС]
qwertehok, первый запрос не выполняется, переменная id как была 0 так и осталась
0
5999 / 4574 / 1096
Регистрация: 29.08.2013
Сообщений: 28,254
Записей в блоге: 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
Ответ Создать тему
Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru