Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.09;
Скачать: CL | DM;

Вниз

Выбор с помощью TQuery из базы Access   Найти похожие ветки 

 
Lola ©   (2002-08-19 17:16) [0]

Строку SQL формирую в программе, значения беру из TDateEdit. Результирующая строка имеет вид SELECT ... FROM Reg Reg WHERE DateDoc="18.08.2002". В результате вылетает с ошибкой Data type mismatch in criteria expression. Примечательно то, что на Paradox-е этот код проходит без ошибок. Вопрос: в чем ошибка?


 
Reindeer Moss Eater   (2002-08-19 17:20) [1]

Ошибка в том, что "Data type mismatch in criteria expression"
Используй параметрический запрос


 
Mike Kouzmine   (2002-08-19 17:21) [2]

Возможно надо "#18/08/2002#" или что-то в этом роде.
Но, вообще, если работаю с Эксесом, то все запросы пишу в нем, а использую TADOStroredProc.


 
koks ©   (2002-08-19 17:36) [3]

Да, Access очччень не привиредлив в отношении дат.
В свое время долго бился над этой проблемой...
Вот решение, может не самое красивое, но стопудовое (но только в случае Access (в моем случае это был Access 200) - а и только в случае подключения через ADO)

твоя дата - MyDate: TDateTime

var
MyDate: TDateTime;
AYear, AMonth, ADay: integer;
begin
DecodeDate(MyDate, AYear, AMonth, ADay);
Query.Close;
Query.Params.ParamByName("Year").Value := AYear;
Query.Params.ParamByName("Month").Value := AMonth;
Query.Params.ParamByName("Day").Value := ADat;
Query.Open;
end;

Query.SQL:

SELECT F1, F2, F3
FROM MyTable
WHERE DateField = DateSeria(:Year, :Month, :Day);

DateSerial - это функция VBA Access, которая возвращает корркетную для Access дату по трем числамЖ год, месяц, день...
Если ты подключаешься через ADO, а ан в свою очередь через Jet - то у тебя появляется доступ к этим функциям...








 
Lola ©   (2002-08-19 18:33) [4]


> Mike Kouzmine (19.08.02 17:21)
Такой формат тоже пробовала, ругается на синтаксическую ошибку.
Попробую использовать параметры. Особо спасибо koks © за DateSerial. Я о ней не знала.



Страницы: 1 вся ветка

Текущий архив: 2002.09.09;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
1-27009
NidHelp
2002-08-30 01:28
2002.09.09
Есть html файл, в теле между <!--begin--> и <!--end--> написан


14-27196
Sten
2002-08-12 00:28
2002.09.09
Подскажите компАнет....плииииз


14-27235
Tornado
2002-08-15 12:34
2002.09.09
Опрос


14-27164
Лана Розанова
2002-08-13 16:55
2002.09.09
Digitman-чик


14-27172
bob1906
2002-08-13 21:49
2002.09.09
Как объеденить два exe - файла в один, e[e+e[e=e[e