Получить запрос с нулевым параметром в 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];

Спасибо объявление

Другие вопросы по тегам