我有一个NSNumber
我想是可选的,没有默认值,没有一些代表“缺失”的幻数(例如 0 或 -1)。IE。在数据库上,我希望它的值为数字或空值。它从 null 开始没问题,但是一旦它得到一个数字,我怎样才能将它重置回“缺失”?
我试过了:
myAttribute = nil;
myAttribute = [NSNull null];
[self setValue:[NSNull null] forKey:@"myAttribute"];
[self setPrimitiveValue:[NSNull null] forKey:@"myAttribute"];
第一个不会崩溃,但我理解将核心数据属性设置为 nil 实际上是说它没有被获取。因此它不会更新。其他三个崩溃。
很多建议都建议NSNumber
应该始终包含一个数字,所以我不希望这是答案。为了克服这个问题,假设我将数据存储在NSString
. 如何获取核心数据以存储NULL
在数据库中而不是空字符串?