К списку форумов К списку вопросов
ПОМОГИТЕ победить это чертово BOOLEAN поле!
Grigoriy
14.04.2004 - 12:03
Никак не могу сделать нормальный запрос с выбором ВСЕХ записей, где поле по имени "DELETE" имеет значение FALSE и только этих полей!
Я уже извращался с различным написанием
'SELECT * INTO "MdocM_Lite.dbf" FROM "mdocm.dbf" Md Where ("Date" between :d1 and :d2) AND (VID=''2s'') AND (TYPE=''9'') AND ("DELETE"=FALSE)'
Где писал и "DELETE"=FALSE и "DELETE"<>True и "DELETE"<>0
и даже сделал так
"DELETE"=:L
где ADOQuery1.Parameters.ParamByName('L1').Value:=FALSE;
Оказалось - либо глотает часть записей, которые с FALSE либо выдает пустую таблицу, либо пропускает и появляются записи и с TRUE
доступ через АДО к dbf, Delphi7, WinXP
Greh
1 - 14.04.2004 - 15:33
Delete - зарезервированное слово
Grigoriy
2 - 14.04.2004 - 15:37
Я в курсе. если создатели БЭСТ это знали, что что же делать?
Oleg S.
3 - 14.04.2004 - 17:10
Переименовывать поле... У меня вот было поле PASSWORD. Переименовал. И приложение, работающее с таблицей, перелопатил и перекомпилил... Впредь не даю полям зарезервированные имена.
Grigoriy
4 - 15.04.2004 - 09:15
А проблемы были именно из-за имени поля?(сорри за тавтологию)
NTFS
5 - 15.04.2004 - 11:25
При отборе по булевскому типу можно просто писать:
WHERE Поле
WHERE NOT(Поле)
(Для ADO - точно)
Grigoriy
6 - 15.04.2004 - 11:32
NTFS, огромное спасибо. Много способов было предложено, но ни один не сработал. Указанный Вами способ работает - все небходимые записи и только они я выбрал. Иногда такие "тонкости" запарывают работу на неделю,
т.к. в результате вынужден был сделать так:
----
DELETE FROM "Mdocm_Lite.dbf" MDL WHERE MDL."DELETE" = TRUE
а потом через BDE паковать таблицу.
таким извратом приходилось заниматься...
Еще раз спасибо.
NTFS
7 - 16.04.2004 - 12:17
Да на здоровье. И тем не менее, ключевые слова в таблицах лучше не использовать. Могут быть проблемы. Замени поле DELETE на DEL.
Grigoriy
8 - 16.04.2004 - 12:53
Это не моя база, это база БЭСТ, я только читаю данные

К списку вопросов на форуме Программирование

>>