![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Запрос в ADOQuery [D7, MSSQL]
Explorer © (2003-02-05 09:10:00)Мастера!
Подскажите, как правильно сформировать запрос за период дат:
Код:
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".
Когда указываю дату не периодом, тоже самое!
Alex-A (2003-02-05 14:18:00) [1]Согласен насчет параметров, но если уж очень хочется динамическим запросом, то
SQL.Add("select * from Registr where DateReg BETWEEN """+S+""" and """+Po+"""");
то есть взять дату в апострофы. И еще в таком случае лучше предстваить дату строкой форматы ГГГГММДД
Delirium^.Tremens (2003-02-05 09:21:00) [2]По-моему, так: (может что-то напутал с Params :-))
SQL.Add("select * from Registr where DateReg BETWEEN :S and :Po");
Params.ParamByName("S").AsDateTime := ...;
Params.ParamByName("Po").AsDateTime := ...;
Open;
Наталия (2003-02-05 09:19:00) [3]На мой взгляд, правильнее работать, используя параметры.