coreData笔记
1. CDVehicle *vehicle = (CDVehicle *)[[NSManagedObject alloc] initWithEntity:entity insertIntoManagedObjectContext:nil];
不会存储数据,查询是查不出来的,重启APP之后数据不存储;
2. CDVehicle *vehicle = (CDVehicle *)[[NSManagedObject alloc] initWithEntity:entity insertIntoManagedObjectContext:nil];
NSError *error = nil;
[context save:&error];
if (error) {
// NSLog(@"save false = %@",error.description);
}else
{
// NSLog(@" save sucess ");
}
不会存储数据,查询是查不出来的,重启APP之后数据依然存在.
小结:由1、2可得 [context save:&error] 方法,是对数据库进行持久化。
3. CDVehicle *vehicle = (CDVehicle *)[[NSManagedObject alloc] initWithEntity:entity insertIntoManagedObjectContext:context];
数据会存储, 重启APP之后数据不存储.
4. CDVehicle *vehicle = (CDVehicle *)[[NSManagedObject alloc] initWithEntity:entity insertIntoManagedObjectContext:context];
NSError *error = nil;
[context save:&error];
if (error) {
// NSLog(@"save false = %@",error.description);
}else
{
// NSLog(@" save sucess ");
}
数据会存储, 重启APP之后数据数据依然存在.
小结:由1、3可得 NSManagedObject alloc] initWithEntity:entity insertIntoManagedObjectContext:CCC]; CCC分别为 nil,和 context,CCC决定了数据在APP生命周期里是否存储。
总结:CCC 是决定在APP生命周期(app的启动到退出后台)里数据是否存储, [context save:&error]决定了是否持久化到数据库中。