Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Базы данных и репортинг > Непонятки с датой. |
Автор: ACMilian 23.1.2007, 18:12 |
Помогите, пож-ста, разобраться вот в чём. Загружаю скрипт: Scritp ADACCESS Insert into ORDERS (nuid, cid, data) values(:nuid:,:cid:,:data:) в ADOQuery LoadScript( ExtractFilePath(ParamStr(0)) + 'SCREEPT.sql', 'ADACCESS', DataModule2.ADOQUERY3.SQL ); SetParam( DataModule2.ADOQUERY3.SQL, 'nuid', '4' ); SetParam( DataModule2.ADOQUERY3.SQL, 'cid', '4' ); SetParam( DataModule2.ADOQUERY3.SQL, 'data', 'DateToStr(date)) после последней строки возникает ошибка : Syntax error in number in query expression '11.01.2007' Что делаю не так? |
Автор: voha 23.1.2007, 18:18 |
А зачем дату в строку преобразовывашь? ИМХО это лишнее |
Автор: ACMilian 23.1.2007, 18:20 |
Если так: SetParam( DataModule2.ADOQUERY3.SQL, 'data', date); то не совместимость типов Дататайм и стринг... |
Автор: voha 23.1.2007, 18:27 |
а запрос грузится в рантайме или нет если нет, то помоему можно явно указать типы параметров запроса если да, то в рантайме попробуй указать типы параметров, если такое можно в АДО |
Автор: ACMilian 24.1.2007, 10:55 |
запрос грузится после клика на кнопке... |
Автор: voha 24.1.2007, 11:59 | ||
а если
но я всеравно склоняюсь к мнению о том что параметры нужно типизировать |
Автор: RideX 25.1.2007, 21:39 | ||||
ACMilian, чтобы всегда работало правильно и не было необходимости задумываться об этом, в SQL-запросе используй функцию из самого Jet SQL: DateValue. В общем виде это должно выглядеть так:
Или вот, в частности, пример рабочего кода:
|