繁体   English   中英

数据库导入后核心数据唯一约束失败

[英]Core Data Unique Constraint Failed after DB Import

我正在将数据从旧的.sqlite数据库复制到计划从现在开始在应用程序中使用的新的.sqlite数据库。 旧数据库包含class Thing : NSManagedObject的表class Thing : NSManagedObject对象,上面有许多属性。

要复制的数据,我使用FMDB来查询所有行的旧数据库,然后我做的: Thing *thing = [NSEntityDescription insertNewObjectForEntityForName:@"Thing" inManagedObjectContext:context] ,然后设置每个属性thing使用旧数据库中的行。 并以[context save:&error]结尾。

复制成功,数据显示在应用程序中。 但是,当我尝试添加新数据时,出现错误: UNIQUE constraint failed: ZTHINGS.Z_PK 如果我只是创建新数据库而不复制任何数据,则可以很好地写入新数据。

因此,我将旧数据复制到新数据库中时会出现问题,导致主键无法使用。 有谁知道这可能是什么原因?

我面临相同的情况,并按照以下步骤解决:

1将数据库浏览器用于SQLite

2进入系统创建的Z_PRIMARYKEY表

3将Z_MAX值更改为所需的值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM