Ошибка «Необходимо объявить переменную @myvariable» с параметризованным запросом ADO

Я пытаюсь использовать параметризованные запросы с ADO. Выполнение объекта Commandвызывает ошибку:

Необходимо объявить переменную '@filename'

я объявляю параметр @filenameс помощью CreateParameter/Append:

sql := 'INSERT INTO Sqm(Filename, data) VALUES(@filename, @data)';

command := CoCommand.Create;
command.Set_ActiveConnection(Connection.ConnectionObject);
command.Set_CommandText(sql);
command.Set_CommandType(adCmdText);
command.Parameters.Append(Command.CreateParameter('@filename', adLongVarWChar, adParamInput, -1, Filename));
command.Parameters.Append(Command.CreateParameter('@data', adLongVarWChar, adParamInput, -1, xml);

command.Execute({out}recordsAffected, EmptyParam, adCmdText or adExecuteNoRecords);

Что я делаю неправильно?

5
задан Ian Boyd 23 May 2012 в 17:48
поделиться