| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > ADOQuery "Неправильно опеределен объект Parameter" |
| Автор: GraNit 30.11.2022, 09:29 | ||||
| Здравствуйте, уважаемые форумчане! Ох долго же меня тут не было Ладно, в сторону лирику. Проблема в следующем: при выполнении запроса
Получаю ошибку: Неправильно определен объект Parameter. Предоставлены несогласованные или не полные данные. Более глубокое изучение проблемы выявило то, что при передаче данных вот здесь:
некоторые данные имеют значение nil. Видать ADOQuery это не устраивает и он ругается. Не могу понять, как заставить данные принять нормальный вид, т.е. есть это целое число, то "0", если строка то пустая строка. Если идея проверять тип данных в поле и приводить данные параметра к этому типу, но по моему будет слишком громоздко. Может есть более изящный и красивый путь? Что скажете? Прошу помощи. |
| Автор: GraNit 1.12.2022, 13:01 |
| Дополню. Получается, что результат запроса из FireBird-а содержит некоторые записи с пустыми значениями полей, т.е. они не имеют значений. По этой причине значение равно NULL, т.е. не ноль, а не имеет значения. Соответственно, когда я передаю данные значения в виде параметра во время переноса данных, то получаю эту ошибку. Надо бы заполнять значениями во время запроса... ...тихо сам с собою, я веду беседу... |
| Автор: GraNit 1.12.2022, 20:09 |
| Все решил я проблему. В запросе использовал Coalesce(); Теперь все поля у меня заполнены значениями. |