Хотя класс TParameters
имеет свойство по умолчанию, он принимает Integer
, а не string
.
Если вам известен индекс параметра, который вы можете использовать:
var I: Integer;
....
ADOQuery1.Parameters[I].AsString := Edit1.Text;
В противном случае вам нужно использовать:
ADOQuery1.Parameters.ParamByName('mcode').AsString := Edit1.Text;
Примечание: вы должны избегать использования любой из функций *ByName
(ParamByName
, FieldByName
и т. Д.)Зацикливайтесь, если можете, потому что каждый вызов выполняет линейный поиск в базовой коллекции, пока не найдет совпадение.Не очень актуально в данном конкретном случае, но стоит принять во внимание.