
05.02.2013, 21:51
|
Прохожий
|
|
Регистрация: 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)');
Так тоже не работает =/
|