Вниз
Скачать: CL | DM;

Использование параметров в ADOQuery   Найти похожие ветки 

← →
Goida ©   (2004-05-07 10:54) [0]

У меня не получилось работать с параметрами :( Я написал запрос (например):
select Фамилия, Имя
from Клиент
where Фамилия = @Фамилия

В ADOQuery я создал в десижн-тайм такой же параметр и задал ему тип string. Когда же я попытался присвоить параметру значение, появилась ошибка, что параметра нет. Почему? Может это из-за того, что я присваиваю строку с запросом во время выполнения?


← →
Johnmen ©   (2004-05-07 10:58) [1]

select [Фамилия], [Имя]
from [Клиент]
where [Фамилия] = :Familia


← →
Goida ©   (2004-05-07 11:14) [2]


> Johnmen

Ты хочешь сказать, что нужно англицкий использовать?


← →
Курдль ©   (2004-05-07 11:23) [3]

Он хочет сказать, что нужно двоеточие использовать :)
ЗЫ: Можно русское :)


← →
Мунька   (2004-05-07 11:25) [4]

>Ты хочешь сказать, что нужно англицкий использовать?
В общем использование английского языка в качестве имен полей необязательно, но лучше все-таки его использовать, а не русский, проблем меньше, не нужно всяких там [], да и с кодировками меньше шансов залета
А уж в именах параметров - точно лучше использовать английский


← →
Goida ©   (2004-05-07 11:27) [5]

Я и с двоеточием писал. Результат такой же получал. Может мне динамически создавать параметры?


← →
Курдль ©   (2004-05-07 11:32) [6]


> Я и с двоеточием писал. Результат такой же получал.

Этого не может быть. В дизайн-тайме  умные компоненты (не знаю про ADOQuery - не пользовал) сканируют текст SQL-запроса и ищут параметры как раз по признаку "начинается с двоеточия". Если параметр найден - он попадает в параметр лист и никуда оттуда не девается. А вот если были загадочные @ - Вы не сможете ничему установить тип, т.к. лист будет пуст.


← →
sniknik ©   (2004-05-07 11:32) [7]

значит либо у тебя paramcheck фалсе либо не в то время присваиваеш.


← →
sniknik ©   (2004-05-07 11:34) [8]

еше вариант поиск по несуществующему имени парамбайнаме(":Familia") - ошибка!


← →
Курдль ©   (2004-05-07 11:36) [9]

Прошу прощения ADOQuery оказался тупее, чем я даже думал :(
Тогда один путь - не ошибаться в названии параметра.
Если в запросе написано :FAMILIA то и имя параметра надо писать FAMILIA. Именно так - в запросе с двоеточием, в имени - параметра - без!


← →
Goida ©   (2004-05-07 11:44) [10]

Все ясно. Кажется в этих двух тчк и была ошибка.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.025 c
3-1084257796
Alex_xxx
2004-05-11 10:43
2004.05.30
ADO, BDE, FOX, dBASE: КОДИРОВКА ДОС/ВИН


14-1084258208
Тимохов
2004-05-11 10:50
2004.05.30
Впечатления о memory maneger е.


14-1084426214
Bless
2004-05-13 09:30
2004.05.30
Посоветуйте, плз, видеокарту в пределах 100 у.е.


1-1085035121
Sandman25
2004-05-20 10:38
2004.05.30
procedure of class?


8-1079904338
Swine
2004-03-22 00:25
2004.05.30
О гифах




   Наверх