![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемма с TADOQuery [D7]
Alexander1966 © (2004-08-04 11:34:00)Следующая строка дает ошибку "Несответствие типов данных...":
драйвер ODBC Paradox.
ADOQuery1.SQL.Add('Select * FROM log WHERE ');
ADOQuery1.SQL.Add('SessionStart>''01.01.2004 08:00:00''');
ADOQuery1.Open;
Если сделать так:
ADOQuery1.SQL.Add('Select * FROM log WHERE ');
ADOQuery1.SQL.Add('SessionStart>:Par1);
ADOQuery1.Parameters.ParamByName('Par1').Value:=d1;
ADOQuery1.Open;
работает, но: через тогда в запросе не учитываются минуты,
так, как будто я передал: 01.01.2004 00:00:00,
хотя при прогоне Value показівает так как надо.
sniknik (2004-08-04 12:51:00) [1]ADOQuery1.SQL.Add('SessionStart>#01/01/2004 08:00:00#');
сергей1 (2004-08-04 12:34:00) [2]а вот в MSSQL и вообще так просто даты не сравнишь, приходится пользоваться функцией datediff(), если она возвращает отрицательное значение, значит первая дата более раньяя, чем вторая, может и в Paradox лучше пользоваться чем-то подобным ?
Alexander1966 (2004-08-04 11:54:00) [3]d1: TdateTime;
d1:=StrToDateTime('01.01.2004 08:00:00');
stone (2004-08-04 11:52:00) [4]Тут не видно что ты присваеваешь d1 и какой у него тип данных