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

Запрос в ADOQuery   Найти похожие ветки 

 
Explorer ©   (2003-02-05 09:10) [0]

Мастера!
Подскажите, как правильно сформировать запрос за период дат:
Код:

S := DateToStr(DateTimePickerS.DateTime);
Po := DateToStr(DateTimePickerPo.DateTime);

with ADOQueryReg do
begin
Close;
SQL.Clear;
SQL.Add("select * from Registr where DateReg BETWEEN "+S+" and "+Po+"");
Open;
end;

При запуске кода, выдает сообщение EOleException
" Line 1: Incorrect syntax near ".2003".

Когда указываю дату не периодом, тоже самое!


 
Наталия ©   (2003-02-05 09:19) [1]

На мой взгляд, правильнее работать, используя параметры.


 
Delirium^.Tremens ©   (2003-02-05 09:21) [2]

По-моему, так: (может что-то напутал с Params :-))

SQL.Add("select * from Registr where DateReg BETWEEN :S and :Po");
Params.ParamByName("S").AsDateTime := ...;
Params.ParamByName("Po").AsDateTime := ...;
Open;


 
Alex-A   (2003-02-05 14:18) [3]

Согласен насчет параметров, но если уж очень хочется динамическим запросом, то

SQL.Add("select * from Registr where DateReg BETWEEN """+S+""" and """+Po+"""");

то есть взять дату в апострофы. И еще в таком случае лучше предстваить дату строкой форматы ГГГГММДД



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

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



Память: 0.45 MB
Время: 0.011 c
1-75942
Jens
2003-02-14 21:16
2003.02.24
Как опредилить сколько время прошло после запуска Windows?


3-75832
Arkady
2003-02-06 16:46
2003.02.24
TADOTable


6-76067
Spy X
2003-01-02 21:11
2003.02.24
spyx@inbox.ru


4-76236
[S]_Dorado
2003-01-05 20:36
2003.02.24
Win API


14-76151
Шоломицкий
2003-02-07 17:26
2003.02.24
Предлагают работу! Помогите плиз!




   Наверх