gpt4 book ai didi

iOS >> CoreData >> 我应该创建一个 ID 属性还是可以使用 SQLite 对象 ID?

转载 作者:IT王子 更新时间:2023-10-29 06:32:16 25 4
gpt4 key购买 nike

使用 CoreData 时,我是否需要创建一个 ID 属性以便为每条记录设置某种唯一键,或者我是否可以访问表中每一行的数据库 ID 字段?

如果有一种方法可以使用 DB ID 字段,我将不胜感激有关在通过 managedObject 实例保存记录时如何访问它的一些指导......

最佳答案

通常不需要创建 id 属性,因为每个对象都有一个对象 ID (NSManagedObjectID)。如果您有一个托管对象,您可以通过向它发送 -objectID 来获取它的 ID。不过有一个问题:

有一个问题:NSManagedObjectID 可以是临时的也可以是永久的。创建对象时,它有一个临时 ID,直到您获得该对象的永久 ID。当您持久化一个对象时,Core Data 会自动为每个仍然具有临时 ID 的对象获取一个永久 ID。

如果您需要自定义 ID 属性,您应该为每个实体单独创建它。不要创建具有 ID 属性的抽象实体。如果这样做,Core Data 将为所有从抽象实体继承的实体创建一个巨大的(怪物)表。这很糟糕。

关于iOS >> CoreData >> 我应该创建一个 ID 属性还是可以使用 SQLite 对象 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19245049/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com