CoreData会在我升级应用程序后保留用户数据吗?否则我需要编写一个带有数据库的Web服务来保存用户数据。提前致谢! 最佳答案 如果您将数据存储在应用程序的文档目录中,那么如果您只是升级应用程序,则无需更新数据库或设置。如果您从设备上删除应用程序,那么文档也会被删除,在这种情况下,您将不得不重新创建数据。 关于ios-升级应用程序后,CoreData是否保留数据?,我们在StackOverflow上找到一个类似的问题: https://stackoverfl
是否可以在iPhone应用程序的CoreData中对多列设置唯一约束?例如:有Event、EventItems、Items实体EventItems实体有一列ORDER因此EventItem的ORDER列对于与同一EVENT相关的所有实例来说应该是唯一的所以问题是:如何在coredata中设置此约束?如果它不直接支持任何有关如何以编程方式实现的建议? 最佳答案 做对于同时操作多个托管对象的任何核心数据约束,您需要考虑实现:-(BOOL)validateForDelete:(NSError**)error-(BOOL)validateF
我在生产应用程序中遇到了一些奇怪的核心数据错误,但我能够获得崩溃报告。它有时会崩溃并显示以下消息***errorforobject0x17e400000:Freeingunallocatedpointer***errorforobject0x17fd03730:pointerbeingreallocatedwasnotallocated这是堆栈跟踪Crashed:SQLQueue0x13ff15250fordatastore.sqliteSIGABRTABORT0x00000001839860140libsystem_kernel.dylib__pthread_kill+81libsy
我尝试的第一件事是使用FetchedResultsController来解决我的问题。这是FRC的一种非典型用法,因为我没有更新TableView,我只是用它来确定实体是否正在更改,以便我知道何时保存到服务器:self.fetchedResultsController=[DocumentMR_fetchAllSortedBy:@"timestamp"ascending:NOwithPredicate:[NSPredicatepredicateWithFormat:@"report.remoteId!=nil&&dirty==YES"]groupBy:nildelegate:selfin
我在我的应用程序中有一个简短的设置过程,我创建了一个NSManagedObject来存储个人的姓名和其他详细信息,但是在这个设置过程中,我不想保存对象,直到用户在设置结束(以防万一他们出于任何原因取消设置)。那么是否可以在设置过程结束之前将包含我的信息的对象保留一小段时间,而不实际将其保存到CoreData中? 最佳答案 你也可以使用NSEntityDescription*ed=[NSEntityDescriptionentityForName:@"YourManagedObject"inManagedObjectContext:m
我理解为什么会发生此错误:当您尝试访问在另一个线程的托管对象上下文中删除的CoreData对象时,该对象因此被设置为“故障”对象,因此任何保留的引用将不再指向到一个有效的CoreData对象。我正在使用NSFetchedResultsController。我已确认所有代码均已正确实现。我有2个托管对象上下文,一个用于BG线程,一个用于主线程。我已经确认主线程订阅了NSManagedObjectContextDidSaveNotification下的通知。我已经确认,当此通知触发时,我会在主线程管理的对象上下文中执行mergeChangesFromContextDidSaveNotifi
此代码引发“CoreData:error:(19)PRIMARYKEYmustbeunique”错误。Day实体只有一个when属性是NSDate,以及一个名为tasks的多对多关系.为什么会出现这个错误?如果Day已经存储了特定日期,我获取它,否则我插入它。所以,对于每一天的对象,应该有一个不同的when属性。我不确定这是否是主键。如何解决这个问题?先感谢您。NSMutableSet*occurrences=nil;occurrences=...NSMutableOrderedSet*newSet=[NSMutableOrderedSetorderedSetWithCapacity:
我了解NSObjectInaccessbileExceptions的一般情况,并且需要避免尝试在另一个托管上下文/线程中删除的对象中出错。但是,在我的用户崩溃报告中,我在将子NSManagedObjectContext从后台线程(B)合并/保存到我的主上下文(A)时看到NSObjectInaccessibleException,这似乎是一种不寻常的情况。我能想到的唯一可能导致这种情况的情况如下:更改线程/上下文中对象的属性(B)删除线程/上下文A中的对象保存上下文A保存上下文B将A合并到B中并保存A->由于A中不存在对象而引发异常。有没有其他人在这样保存上下文时看到异常?我试图手动重现
下面的代码在没有最后一条语句的情况下运行良好。但是,对于最后一行,Xcode停止并显示以下消息:CoreData`+[NSManagedObjectContextMultithreading_Violation_AllThatIsLeftToUsIsHonor]:NSManagedObjectContext*context=GLOBAL_appDelegate.coreDataHelper.contextBackground;[contextperformBlock:^{NSFetchRequest*fetchRequest=[[NSFetchRequestalloc]init];[f
我收到此错误,似乎是在警告我存在重复文件。我是不是遗漏了什么,或者Xcode现在不需要创建nsmanaged子类来对核心数据进行操作。我尝试创建一个空白项目,但同样的事情发生了。这是错误数据:0:error:filename"Card+CoreDataClass.swift"usedtwice:'/Users/user/Documents/Developer/coredata/Card+CoreDataClass.swift'and'/Users/user/Library/Developer/Xcode/DerivedData/coredata-gicbdltjgiidbcfxaqqa