Получить запрос с нулевым параметром в dbaccess
Если у меня есть два dbobject, как:
@interface Member : DBObject
@property (strong) NSString* firstname;
@property (strong) NSString* lastName;
@property (strong) Group* group;
@end
@interface Group : DBObject
@property (strong) NSString* groupName;
@property (strong) NSString* adminName;
- (DBResultSet*)members;
@end
В объекте-члене я могу получить член, который относится к группе, но в объекте-члене также есть много объектов, которые не содержатся в объекте группы. Тогда как я могу их получить?
Я пытался с этим, но дал пустой DBResultSet.
[[[Member query] whereWithFormat:@"group == %@",NULL] fetch];
Спасибо в Adv.
1 ответ
Решение
Да, в SQLite вы не можете приравнять NULL, поэтому вы используете немного другое выражение для работы с NULL-объектами. Вам нужно использовать IS NULL или NOT NULL.
Короче говоря, ваш запрос выше станет:
[[[Member query] where:@"group IS NULL"] fetch];
Иногда это создает проблемы при создании запросов с параметрами, но вам просто нужно создать запрос, чтобы в этом случае он выглядел несколько иначе.
Например:
[[[Member query] whereWithFormat:@"(group == %@ OR group IS NULL)",@(123)] fetch];
Спасибо объявление