Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ошибка с параметром в TQuery [D6, dBase, FoxPro, Midas]


Valeron ©   (2002-11-29 16:44:00) 

В св-ве SQL записан такой текст:
SELECT *
FROM table
WHERE :p_Param BETWEEN field1 AND field2
Выдает ошибку :
BDE Error 11936
Parameter not set in query string.
В чем может быть трабл?


Valeron   (2002-12-02 12:06:00) [1]

Да опечатка


Sras   (2002-12-02 11:54:00) [2]

>VAleksey
спасибо!


VAleksey   (2002-12-02 11:49:00) [3]


> Sras (02.12.02 08:40)

нет


> Valeron (02.12.02 09:29)
> 2 ЮЮ

Цифра 100 наверное опечатка ?


Valeron   (2002-12-02 09:29:00) [4]

2 ЮЮ
Ты пишешь WHERE 100 field1 >= :p_Param AND field2 <= :p_Param .
Я изначально так и писал, но в свойстве Params 2(!!!) p_Param... :((((((((((((
И все равно ошибка, только теперь в sql чего-то там *.dll.


Sras   (2002-12-02 08:40:00) [5]

Хорошо, тогда такой вопрос к ув. Anatoly Podgoretsky. А можно ли название поляпередавать параметром? Это мне для личного развития, так сказть...


Anatoly Podgoretsky   (2002-12-02 08:10:00) [6]

Не стоит делать такого вывода, согласно справочной системы, такая конструкция допустима.
value1 [NOT] BETWEEN value2 AND value3
В примере 10 BETWEEN 1 AND 5

value2 и value3 также могут быть полями (column)


Sras   (2002-12-02 07:48:00) [7]

Обратите внимание, что через параметр тут пытаются передавать поле, а не какое-то определенное значение. Т.е. запрос построен в корне неверно.
Эта строка должна выглядеть примерно так:
WHERE field BETWEEN param1 AND apram2


Wind2000   (2002-12-01 17:30:00) [8]

Свойство ParamCheck устанавливаешь? А параметр потом передаешь через ParamByName? Если все именно так - забей на BETWEEN и используй обычные неравенства. Вообще говоря, я не приверженец использования Between


lmatveev   (2002-11-30 23:20:00) [9]

В реализации SQL в BDE вообще очень много необъяснисых глюков :(((


ЮЮ   (2002-11-30 08:01:00) [10]

А не лучше использовать нормальное неравенство, указывая сначала имя поля, а затем его значение?
WHERE 100 field1 >= :p_Param AND field2 <= :p_Param ???


Дед Макар   (2002-11-29 17:27:00) [11]

Тогда забей и формируй запрос динамически или через макросы RXQuery


Valeron   (2002-11-29 17:11:00) [12]

Да работатет.
Тип и тип ввода и значение по умолчанию установлено. Типы полей совпадают с типом параметра. Самое интересное, что это с BETWEEN глюк.


Дед Макар   (2002-11-29 17:08:00) [13]

ParamType установлен?

SELECT *
FROM table
WHERE 100BETWEEN field1 AND field2
работает?


Valeron   (2002-11-29 17:07:00) [14]

Самое интересное что это только с BETWEEN. Может на параметры в TQuery есть какие-то ограничения?


Valeron   (2002-11-29 16:54:00) [15]

я по умолчанию ставлю 0. Все равно выдает ошибку.


Дед Макар   (2002-11-29 16:48:00) [16]

Трабл в том, что не установлен параметр :)))
В нашем случае - :p_Param


Наверх

Титульная страница Поиск, карта сайта Написать письмо