我的Core Data模型有什么问题?

时间:2016-09-06 19:02:29

标签: ios macos sqlite core-data

我是CoreData中的一个新手,无法理解我的模型有什么问题。当我尝试将持久存储添加到存储协调器时发生错误:

NSPersistentStore *persistentStore = [self.persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:error];

这是一个日志和错误:

> CoreData: sql: CREATE TABLE ZMANAGEDOBJECT ( Z_PK INTEGER PRIMARY KEY,
> Z_ENT INTEGER, Z_OPT INTEGER, ZSECTION.ARTICLES INTEGER, ZTITLE
> INTEGER, ZBOOK.AUTHOR INTEGER, ZNAME INTEGER, ZAUTHOR INTEGER,
> ZPUBLISHER INTEGER, ZSUBTITLE INTEGER, ZTITLE1 INTEGER, ZAUTHOR1
> INTEGER, ZTEXT INTEGER, ZTITLE2 INTEGER, Z_FOK_SECTION.ARTICLES
> INTEGER, ZCREATEDAT TIMESTAMP, ZUPDATEDAT TIMESTAMP, ZID_ VARCHAR,
> ZTYPE BLOB, ZCONTENT BLOB, ZATTRIBUTES BLOB, ZCOVER BLOB, ZIMAGE BLOB
> )

> CoreData: annotation: Disconnecting from sqlite database due to an
> error.

> CoreData: error: (1) I/O error for database at
> /Users/firuznarzikulov/Library/Application
> Support/BahaiAppAdmin/BahaiAppAdmin.sqlite
  

错误域= NSCocoaErrorDomain代码= 256“文件不能为
  打开。“UserInfo = {NSSQLiteErrorDomain = 1,NSUnderlyingException = I / O
  / Users / user / Library / Application的数据库错误   支持/应用/ database.sqlite。 SQLite错误代码:1,
  'near“。”:语法错误'}

这是我的模型图: enter image description here

ManagedObject是抽象实体,除了LocalizedString之外,它还是所有其他实体的父级。

我感谢任何帮助和想法!

1 个答案:

答案 0 :(得分:3)

尝试在没有“。”的情况下重命名您的关系。

通常的模式是例如“authorName”用于一对一关系,“authorNames”用于多对多关系。