Форум: "Базы";
Текущий архив: 2008.04.06;
Скачать: [xml.tar.bz2];
ВнизMicrosoft.Jet.OLEDB.4.0 : ошибка в строке "Sum()" Найти похожие ветки
← →
opoloXAI (2007-11-16 11:01) [0]Добрый день.
Подключаюсь к БД Microsoft Access (.mdb) через "Microsoft.Jet.OLEDB.4.0".
При выполнении программы в строке:
ADOQuery.SQL.Add("Select sum(EndOper-StrOper) As myCalc");
появляется ошибка:
... class EAccessViolation with message "Acces violation at adress 1B041FC6 in module "msjet40.dll"...
Если я пишу:
ADOQuery.SQL.Add("Select (EndOper-StrOper) As myCalc");
то ошибка не возникает, но результат вычислений я получаю не тот (мне нужна сумма).
Как правильно написать строку запроса?
← →
stanislav_ (2007-11-16 11:13) [1]возможно нужно обновить MDAC
← →
ЮЮ © (2007-11-16 11:13) [2]> ADOQuery.SQL.Add("Select sum(EndOper-StrOper) As myCalc")
> ;
Если в этой строке, т.е. строке динамиского формирования иекста запроса, то должно быть пофигу что ты там пишешь.
Для безопасности, присваивай сразу весь текст, без Add
ADOQuery.SQL.Text :=
"Select sum(EndOper-StrOper) As myCalc" ...
← →
sniknik © (2007-11-16 11:16) [3]правильно писать запрос полностью... с указанием таблицы откуда выборка. желательно без разрывов которые делает TADOQuery (вернее делал, но в D6 возможно и осталось, особенно в исходной редакции), и вообще TADOQuery как и TADOTable и TADOStoredProc правильно не использовать...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2008.04.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c