Показать сообщение отдельно
  #1  
Старый 07.08.2011, 20:00
Аватар для Bloo
Bloo Bloo вне форума
Новичок
 
Регистрация: 04.11.2010
Сообщения: 54
Репутация: 10
По умолчанию Параметричекий запрос и записать запрос в Delphi

Вот запрос на добавление записи из одной таблицы в другую.
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 
Не знаю как правильно записать. Данные, которые будут записываться в таблицу, могут быть какими угодно и надо, чтобы в запросе это было записано в виде параметров, которые будут подставляться из таблицы.

Надеюсь, понятно объяснила, а то всё слишком запутанно...))))
Ответить с цитированием