我正在将核心数据实施到现有项目中。
当应用程序第一次运行时,会创建sqllite数据库,但是当我尝试通过调用[managedObjectContext save:]来插入数据时,没有任何反应。我甚至没有收到错误。
我检查了sqllite文件的时间戳。它没有得到更新。 请帮忙。
答案 0 :(得分:0)
我经常遇到类似的问题,原因是我忘记了.sql文件已经创建,并且它没有覆盖,如果我更改了.sql结构,我在模拟器或设备中再次卸载和安装然后它工作正常。
答案 1 :(得分:0)
假设您的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);
}
答案 2 :(得分:0)
尝试复制回滚文件,然后在主文件上运行sqlite3。 不要只使用.sqlite文件,还要复制.sqlite-shm和.sqlite-wal。