Вот запрос на добавление записи из одной таблицы в другую.
2 таблицы tovar и prihod. Поля: [Наименование], [Цена], [Количество].
Данные добавляются из prihod в tovar.
Если добавляем запись из prihod, где поля [Наименование] и [Цена] уже есть в tovar, значит меняется только [Количество], т.е. плюсуется.
Код:
DECLARE @Col int,
@Cena money,
@Naim nvarchar(50)
SET @Col=:koli -- с этими строками проблема
SET @Cena=:cena -- с этими строками проблема
SET @Naim=:naim -- с этими строками проблема
INSERT INTO prihod ([Наименование],[Цена],[Количество]) VALUES (@Naim,@Cena,@Col)
IF EXISTS(SELECT * FROM tovar WHERE [Наименование]=@Naim AND [Цена]=@Cena)
UPDATE tovar SET [Количество]=[Количество]+@Col WHERE [Наименование]=@Naim AND [Цена]=@Cena
ELSE
INSERT INTO tovar ([Наименование],[Цена],[Количество]) VALUES (@Naim,@Cena,@Col)
Проблема вот в чём:
Мне нужно этот запрос написать в Delphi, чтобы он срабатывал при нажатии кнопки.
Таблицы заполняются в интерфейсе на Form в DBGrid, т.е.
данные сразу забиваются в таблицу.
И нужно как-то сделать параметрический запрос,
эти строки вот:
Код:
SET @Col=:koli
SET @Cena=:cena
SET @Naim=:naim
Не знаю как правильно записать. Данные, которые будут записываться в таблицу, могут быть какими угодно и надо, чтобы в запросе это было записано в виде параметров, которые будут подставляться из таблицы.
Надеюсь, понятно объяснила, а то всё слишком запутанно...))))