Тема: ADO + parameters
Показать сообщение отдельно
  #1  
Старый 05.02.2013, 21:51
toddams toddams вне форума
Прохожий
 
Регистрация: 23.01.2013
Сообщения: 10
Репутация: 10
По умолчанию ADO + parameters

Код:
with form1.ADOQuery1 do begin
      SQL.Clear;
      SQL.Add('IF EXISTS(SELECT * FROM sklad WHERE detail='+quotedstr(sname.text)+') BEGIN');
      SQL.Add('UPDATE sklad SET (ostatok=ostatok+:ost) and (prihod=prihod+:ost) WHERE detail='+quotedstr(sname.text)+'');
      SQL.Add('END#13#10 ELSE BEGIN');
      SQL.Add('INSERT INTO sklad(detail,mark,prihod,rashod,ostatok,costuah,costusd)');
      SQL.Add('VALUES(:det,:mar,:ost,0 ,:ost,:co1,:co2)');
        Parameters.Refresh;
        Parameters.ParamByName('det').value:=Sname.text;
        Parameters.ParamByName('mar').value:=Smark.items[smark.itemindex];
        Parameters.ParamByName('ost').value:=Snum.value;
        Parameters.ParamByName('co1').value:=Scost.text;
        Parameters.ParamByName('co2').value:=Scost2.text;
      ExecSQL;
      SQL.Clear;
      SQL.Add('SELECT * FROM sklad');
      Active:=true;

Выдает ошибку Parameter 'det' not found...Не понимаю в чем проблема, помогите

Код:
  SQL.Add('INSERT INTO sklad(detail)');
      SQL.Add('VALUES(:det)'); 


Так тоже не работает =/
Ответить с цитированием