![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ADOQuery не хочет работать со строковым параметром
Григорьев Антон © (2004-10-05 12:25:00)На форме лежит QueryBranchVars:TADOQuery, свойство SQL которого выглядит так:
SELECT Variables.VarName, Variables.VarTitle, Variables.VarType, Variables.MinValue, Variables.MaxValue, Variables.EngUnits, Variables.Reference, Variables.Formula, Variables.Mandatory, Values.Value
FROM [Variables]
INNER JOIN [Values] ON Variables.VarName = Values.VarName
WHERE Groups.Prefix=:SubPrefix
СУБД - Access, поле Groups.Prefix имеет строковый тип.
В программе есть такой код:
QueryBranchVars.Parameters.ParamByName('SubPrefix').Value:='baaa';
QueryBranchVars.Open;
При выполнении Open вываливается исключение с текстом "No value given for one or more required parameters". Если задаю в этом запросе выборку по другим полям, целочесленным, с целочисленными же параметрами, всё работает как надо. Типом парметра SubPrefix играться пробовал - безрезультатно. Изменение Prepared тоже не помогает. В чём может быть причина этой ошибки?
Григорьев Антон (2004-10-05 12:48:00) [1]Вопрос снят. Ошибка в том, что нужно использовать не Groups.Prefix, а Values.Prefix, я просто имя таблицы перепутал.
sniknik (2004-10-05 12:35:00) [2]> поле Groups.Prefix имеет строковый тип
именно так поле и называется? не ссылка на типа таблица.поле?
тогда [Groups.Prefix]
(я бы тоже отказался работать с таким запросом ;о)), сплош на зарезервированных словах и без скобочек)