есть кусок кода, переменные передаю параметром
cmd := TADOCommand.Create(nil);
cmd.Connection := conn;
try
cmd.CommandText
:=' UPDATE addr_book SET ' +
' addr_name = :addr_name , ' +
' addr_short_name = :addr_short_name , ' +
' addr_email = :addr_email , ' +
' addr_tel = :addr_tel , ' +
...
' WHERE addr_id = '+IntToStr(addr_id);
cmd.Parameters.CreateParameter('addr_name' ,ftString,pdInput,255, edtAddrName.Text );
cmd.Parameters.CreateParameter('addr_short_name',ftString,pdInput,255, edtAddrShortName.Text );
cmd.Parameters.CreateParameter('addr_email' ,ftString,pdInput,255, edtAddrEMail.Text );
cmd.Parameters.CreateParameter('addr_tel' ,ftString,pdInput,255, edtAddrTel.Text );
...
cmd.Execute;
finally
cmd.Free;
end;
после выполнения, зачищаются все строки, будто вместо параметров передаются nil.
аналогичное с TADOStoredProc и TADODataSet проходит на ура...
сейчас вот сделал с TADOCommand и такая вот попа (
что я делаю не так?
база - Access, провайдер данных Jet