Столкнулся с такой проблемой: используя следующий код для обращения к процедуре
Код: Выделить всё
UniStoredProc.StoredProcName:='CHECKID';
UniStoredProc.PrepareSQL;
UniStoredProc.Params.CreateParam(ftString,'IN_PARAM',ptInput);
UniStoredProc.Params.CreateParam(ftString,'OUT_PARAM',ptOutput);
UniStoredProc.Params.ParamByName('IN_PARAM').AsString:='123abc';
UniStoredProc.ExecProc;
Result:= UniStoredProc.ParamByName('OUT_PARAM').AsString;
Incorrect number of arguments for PROCEDURE bd.CHEKID; expected 2, got 0
Сразу объясню, для чего параметры создаются вручную: настройки безопасности таковы, что у пользователя есть право только на запуск конкретных процедур и нет права на SELECT для mysql.proc и в результате UniStoredProc.PrepareSQL количество параметров равно нулю.
Вопрос: Я что-то делаю не так или с UniDAC это в принципе невозможно? Такая схема работала с FireDAC для WIndows приложений.