Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.07.19;
Скачать: [xml.tar.bz2];

Вниз

странное поведение ADODataSet   Найти похожие ветки 

 
ivanoff   (2009-05-26 18:42) [0]

делаю:

SELECT Fld1, Fld2
FROM MyTable
WHERE (...) AND
  ((FromDT <= :DT) OR (FromDT IS NULL)) AND ((TillDT >= :DT) OR (TillDT IS NULL))


открываю ADODataSet  с одними и теми-же параметрами:
 из Delphi ----> пустой ???
 из Access -----> Возвращает правельные данные !!!

так как DT принимаю типа Variant делаю так, для уверенности
Parameters.ParamByName("DT").Value := VarToDateTime(DT);


 
Плохиш ©   (2009-05-26 19:21) [1]


>   ((FromDT <= :DT) OR (FromDT IS NULL)) AND ((TillDT >=
> :DT) OR (TillDT IS NULL))
>
>

Это два разных параметра


 
ivanoff   (2009-05-26 20:12) [2]

это и я знаю, но это у меня это всегда работало, и работает в других местах того-же проекта. Почему в данном случе не работает?


 
sniknik ©   (2009-05-26 20:48) [3]

> это и я знаю, но это у меня это всегда работало, и работает в других местах того-же проекта. Почему в данном случе не работает?
т.е. "знаю что на красный свет переходить нельзя, но раньше все получалось. почему сейчас очнулся в больнице?"

извиняюсь за вопрос, но он просто напрашивается, ты в детстве слабоумием не страдал? может у тебя рецидив?


 
ivanoff   (2009-05-26 22:03) [4]

Почему в accesse работает, и спрашивает только один параметр?
И в Delphi я обрщаюсь по имени параметра а не по индексу ... Хочу понять ПОЧЕМУ ибо уже откорректировал так

  ((FromDT <= :DT1) OR (FromDT IS NULL)) AND ((TillDT >= :DT1) OR (TillDT IS NULL))
Parameters.ParamByName("DT1").Value := VarToDateTime(DT);
Parameters.ParamByName("DT2").Value := VarToDateTime(DT);


!!! после правельного напоминания  !!! Плохиш ©   (26.05.09 19:21) [1]


 
turbouser ©   (2009-05-26 22:18) [5]


> ivanoff   (26.05.09 22:03) [4]


> ((FromDT <= :DT1) OR (FromDT IS NULL)) AND ((TillDT >= :
> DT1) OR (TillDT IS NULL))
> Parameters.ParamByName("DT1").Value := VarToDateTime(DT);
>
> Parameters.ParamByName("DT2").Value := VarToDateTime(DT);
>

?


 
sniknik ©   (2009-05-26 22:20) [6]

> Хочу понять ПОЧЕМУ
аксесс это не дельфи и он не обязан задавать параметры также как ты.

если изменишь способ задания то и в дельфи можешь сделать также, например перепишешь парсер и присвоение чтобы принимал одноименные задавая значение всем, или просто обратишься по индексу, или по классической схеме (с "?")  без  дельфевской обертки, да блин масса способов. на то он и язык программирования что можно запрограммировать все, что хочешь, даже если кто то для тябя этого заранее не сделал.


 
Нат ©   (2009-05-26 23:52) [7]


> т.е. "знаю что на красный свет переходить нельзя, но раньше
> все получалось. почему сейчас очнулся в больнице?"

Дальше резковато... Все равно 5 баллов!


 
Медвежонок Пятачок ©   (2009-05-26 23:56) [8]

И в Delphi я обрщаюсь по имени параметра а не по индексу ... Хочу понять ПОЧЕМУ

Открой генофонд и сравни что происходит в bde датасете при выполнении ParamByName().Value:=
с тем, что происходит в ADO при той же ситуации.

Если конечно хочешь понять почему



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

Форум: "Начинающим";
Текущий архив: 2009.07.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
11-1203694121
Алексей К.
2008-02-22 18:28
2009.07.19
Не удаётся получить объект Sender в обработчике...


2-1243342539
jz
2009-05-26 16:55
2009.07.19
MDI формы


9-1181221877
Black-Death
2007-06-07 17:11
2009.07.19
Помгите сделать простую игру на паскале.


2-1243252264
Light-blr
2009-05-25 15:51
2009.07.19
Image не меняет размеров


2-1243343409
Alex_C
2009-05-26 17:10
2009.07.19
Перетаскивание формы за угол





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский