Kavinov |
Отправлено: 23.10.2003, 17:13 |
|
Не зарегистрирован
|
Господа !
Возможно эта тема изъезжана, но все же.
DataModule3->Query1->Close();DataModule3->Query1->SQL->Clear();
DataModule3->Query1->SQL->Add("SELECT M_KEY, RUBLES, DATA");
DataModule3->Query1->SQL->Add("FROM KURS");
//
DataModule3->Query1->SQL->Add("WHERE DATA = #04/01/2001#");
// формат даты в базе дд.мм.гггг а в выражении мм/дд/гггг
//или
DataModule3->Query1->SQL->Add("WHERE DATA = #"+(DataModule3->Table3->FieldByName("DATA")->AsDateTime)+"#");
дает одно и тоже
Invalid use of keyword
Token:=
Line Number : 3
Причем в SQL Builder'е абсолютно нормально отрабатывает такой запрос : SELECT M_KEY, DATA, RUBLES
FROM kurs
WHERE DATA = #04/01/2001#
где 04/01/2001 это мм/дд/гггг
Чем поможете, спецы ?
Спасибо.
|
|
ekya |
Отправлено: 23.10.2003, 19:08 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 27
|
А если так
CODE |
DataModule3->Query1->SQL->Add("WHERE DATA = \'04.01.2001\' ");
или
DataModule3->Query1->SQL->Add("WHERE DATA = \"04.01.2001\" ");
или
DataModule3->Query1->SQL->Add("WHERE DATA = cast(\'04.01.2001\' as DateTime"); //DateTime это тип поля DATA
| |
|
Kavinov |
Отправлено: 24.10.2003, 08:16 |
|
Не зарегистрирован
|
DataModule3->Query1->SQL->Add("WHERE DATA = \'04.01.2001\' ");
или
DataModule3->Query1->SQL->Add("WHERE DATA = \"04.01.2001\" ");
Err : Несоответствие типов данных в условиях отбора.
DataModule3->Query1->SQL->Add("WHERE DATA = cast(\'04.01.2001\' as DateTime");
Err : Invalid use of keyword LineNumber 3 |
|
Admin |
Отправлено: 24.10.2003, 20:11 |
|
Владимир
Группа: Администратор
Сообщений: 1190
|
CODE |
поле Date (ключевое слово)
Select * from MyTable Mt where Mt.'Date' = '02.02.2003'
поле WDate (не ключевое слово)
Select * from MyTable where WDate = '02.02.2003'
|
И не называетй Вы названия полей ключевами словами,
типа Date Data Type и другими...
Отредактировано Admin — 24/10/2003, 21:29
|
|