我正在将核心数据实施到现有项目中。
当应用程序第一次运行时,会创建 sqllite db,但是当我尝试通过调用 [managedObjectContext save:] 插入数据时,什么也没有发生。我什至没有得到错误。
我检查了 sqllite 文件的时间戳。它没有得到更新。请帮忙。
尝试复制回滚文件,然后在主文件上运行 sqlite3。不仅使用 .sqlite 文件,还复制 .sqlite-shm 和 .sqlite-wal。
我经常遇到类似的问题,原因是我忘记了 .sql 文件已经创建,并且它不会覆盖,如果我更改 .sql 结构,我会在模拟器或设备中卸载并再次安装,然后它就可以正常工作了。
假设您的 sqlite 数据库是在 /documents 文件夹中创建的。
CoraDataEntity *entity = (CoraDataEntity *)[NSEntityDescription insertNewObjectForEntityForName:@"CoraDataEntity" inManagedObjectContext:context];
NSError *error = nil;
if(![managedObjectContext save:&error]){
NSString* msg = [NSString stringWithFormat:@"Unresolved error saving core data context: %@, %@", error, [error userInfo]];
NSLog(@"%@",msg);
}