Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.17;
Скачать: CL | DM;

Вниз

В TQuery самозаменяются параметры, почему?   Найти похожие ветки 

 
RavenD   (2004-09-16 14:59) [0]

Привет, All!

в TQuery лежит запрос:
"select * from Table1 t1 where t1."year"=iyear"

в базе есть записи только за 2003 год, при вызове строки Query1.ParamByName("iyear").AsInteger := 2004 значение в Query1.ParamByName("iyear").AsInteger подменяется 2003, пройдя по исходникам Delphi (5) дошел до TParam.SetAsInteger(Value : Longint); и увидел что передается не 2004, а 2003, дальше пройти не смог, наверняка на эти грабли я наступил не первый, что посмотреть и как подправить, подскажите.

P.S.
никаких примочек типа МастерДетайл или указания в качестве DataSource  другого источника (TTable, TQuery) не используется -> перекрывать значения некому

Спасибо.


 
Save   (2004-09-16 15:11) [1]

ParamCheck?


 
sniknik ©   (2004-09-16 15:19) [2]

select * from Table1 t1 where t1."year"=:iyear


 
Sergey13 ©   (2004-09-16 15:20) [3]

чудеса?


 
RavenD   (2004-09-16 15:28) [4]

>Save
ParamCheck не влияет, пробовал и true и false, результат тот же

>sniknik
думаю понятно что кавычки были добавленны только в топике

>Sergey13
чудеса не чудеса, а разбиратся нужно

Спасибо за ответы, но может кто ещё что подскажет?


 
Sergey13 ©   (2004-09-16 15:31) [5]

2[4] RavenD   (16.09.04 15:28)
>думаю понятно что кавычки были добавленны только в топике
Там не кавычки главное а двоеточие.


 
RavenD   (2004-09-16 15:38) [6]

народ пардон, естественно двоеточие тоже присутствует, иначе бы вылетало, а оно зашибенно работает и даже находит, только то чего не должно быть :(


 
Sergey13 ©   (2004-09-16 15:41) [7]

> при вызове строки Query1.ParamByName("iyear").AsInteger := 2004 значение в Query1.ParamByName("iyear").AsInteger подменяется 2003
Как ты это определил? Может кусок кода выложишь где это и открытие запроса?


 
RavenD   (2004-09-16 16:14) [8]

>Sergey13
>Как ты это определил? Может кусок кода выложишь где это и открытие запроса?
вытащил Query1.ParamByName("iyear").AsInteger в Watch, а так же смотрел что приходит в TParam.SetAsInteger(Value : Longint);

народ, все нашел, была объявленна глобальная переменная с тем же именем что и параметр передаваемый в функцию где вызывался TQuery

Всем Спасибо.



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

Текущий архив: 2004.10.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
1-1096647667
quickblack
2004-10-01 20:21
2004.10.17
pchar


1-1097052892
Lord de Mon
2004-10-06 12:54
2004.10.17
Массив EDITов


1-1097052220
bobr12
2004-10-06 12:43
2004.10.17
Как отобразить число 0,1 в виде 1е-1


4-1095084845
Relaxxx
2004-09-13 18:14
2004.10.17
Как мне инициализировать сразу два порта(СОМ1 и СОМ2)


1-1096303053
Nkrd
2004-09-27 20:37
2004.10.17
активный richedit