Вниз
Скачать: 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.013 c
6-76066
_vitek_
2003-01-07 01:00
2003.02.24
Как послать пакет всей подсетке


1-76019
Dms
2003-02-07 11:51
2003.02.24
Директория для проектов по умолчанию


14-76135
gn
2003-02-07 12:06
2003.02.24
сша хочет по воевать


14-76194
Anatoly Podgoretsky
2003-02-08 00:24
2003.02.24
Именинник 7 февраля


3-75785
Arkady
2003-02-06 10:39
2003.02.24
TADOTable




   Наверх