coredata iphone中的关系问题

coredata iphone中的关系问题,iphone,core-data,entity-relationship,Iphone,Core Data,Entity Relationship,我正在处理iphone中的核心数据, 看起来一切都很顺利(创建了数据库并保存了一些数据),直到我找到了一些我还没有得到的东西 我有3个实体(员工、工作日、中心),其中一个实体与另2个实体有一对多的关系 ENTITY RELATIONSHIP ENTITY Employee>>>>days(one to many)>>Days (inverse of Days, employee) Employee>>>>cent

我正在处理iphone中的核心数据, 看起来一切都很顺利(创建了数据库并保存了一些数据),直到我找到了一些我还没有得到的东西

  • 我有3个实体(员工、工作日、中心),其中一个实体与另2个实体有一对多的关系

    ENTITY       RELATIONSHIP      ENTITY
    Employee>>>>days(one to many)>>Days (inverse of Days, employee)
    Employee>>>>centre(one 2 many)>Centre (inverse of Centre, employee)
    
在我的sqlite生成的数据库中,我使用sqlite管理器(firefox)检查它,关系在(Z_PK、Z_ENT、Z_OPT、ZEMPLOYEE)之后显示一个实体(ZCENTRE),但没有按该顺序显示(这是我的其他实体(Z_天)的预期顺序吗?),它显示在一个属性之后,所以它让我觉得在代码中是作为一个属性而不是一个实体

在模型代码中,对于center.h,我有

 #import <CoreData/CoreData.h>
 @class Employee;
 @interface Centre :  NSManagedObject  
 {}
 @property (nonatomic, retain) NSString * centres;
 @property (nonatomic, retain) Employee * employee;
 @end
这是一个有效的,Days.h和Days.m的代码基本相同,当然属性也有变化

  • 但在sqlite上没有按预期顺序显示?? 另外,在sqlite上的employee表中,关系是否按顺序显示(我没有在sqlite管理器上显示它们!)
我必须在模型中给他们打电话吗?(我想是的!)

对员工来说也是如此

   #import "Employee.h"
   #import "Centre.h"
   #import "Days.h"
   @implementation Employee
   @dynamic centre;
   @dynamic days;
  • 所以问题又来了:我需要在db中显示关系,并在SQLItemManager中检查它们实际上正在工作

好的,非常感谢!

一些需要考虑的事情:

  • 您是否已在托管对象模型中定义了所有关系
  • 您是否需要
    NSManagedObject
    的自定义子类?如果不需要自定义行为,则无需将它们创建为单独的类。如果确实需要,那么使用这些类的实体是否在上述模型中设置
  • 为什么您关心sqlite数据库?它实际上只是一个实现细节,生成的模式不应该与您有关。您在代码中遍历这些关系时有问题吗

好的,刚刚检查了一个示例,只要按顺序(1,2,3,4…)编号,关系就可以出现在属性后面的sqlite中但关于主要实体的问题仍然存在,如何设置员工与天数和中心的关系,谢谢!嗨,tnx-在我的托管对象模型中,我只调用类型为momd的数据库,-我不需要自定义子类cheers,-我关心模式,因为我从csv导入了大量条目,并注意到了这一点,再次感谢!
for the Employee.h>>>@class Centre;
@class Days;
@property (nonatomic, retain) Centre * centre;
@property (nonatomic, retain) Days * days;
   #import "Employee.h"
   #import "Centre.h"
   #import "Days.h"
   @implementation Employee
   @dynamic centre;
   @dynamic days;