Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ошибка в SQL запросе?! [D7, Paradox]


cad2206 ©   (2004-12-16 11:11:00) 

Динамически в программе создаю SQL запрос:
Код:
Clear;
Add('SELECT *');
Add('FROM dogovora');
Add('WHERE Data >= '+ DateToStr(Form1.DateTimePicker1.Date)+'   AND Data <= '+ DateToStr(Form1.DateTimePicker2.Date));
Add('ORDER BY ' + order);
Query1.Open;

Получаю текст SQL:
SELECT *
FROM dogovora
WHERE Data >= 16.11.2004 AND Data <= 16.12.2004
ORDER BY Data

Но возникает ошибка: Invalid use of keyword
Где ошибка?


_Nikolay   (2004-12-16 13:56:00) [1]

Есть такое слово - between - истина если число/дата попадает в интервал, а каждое условие в скобки - для наглядности


liver   (2004-12-16 11:27:00) [2]

конечно, в кавычки


Соловьев   (2004-12-16 11:18:00) [3]

SELECT *
FROM dogovora
WHERE Data >= '16.11.2004 'AND Data <= '16.12.2004 '
ORDER BY Data

И лучше юзай параметры:
SELECT *
FROM dogovora
WHERE Data between :d1 AND :d2
ORDER BY Data
...

Query1.ParameterByName(d1).AsDateTime := Date;
Query1.ParameterByName(d2).AsDateTime := Date;


Александр Иванов   (2004-12-16 11:17:00) [4]

Может дату в кавычки?


Наверх

Титульная страница Поиск, карта сайта Написать письмо