gpt4 book ai didi

cocoa - Core Data/SQLite 是否压缩冗余信息?

转载 作者:行者123 更新时间:2023-12-03 17:53:00 26 4
gpt4 key购买 nike

我想使用 Core Data(可能有 SQLite 支持)来存储大型数据库。许多行之间的大部分字符串数据都是相同的。 Core Data/SQLite 是否会看到这种冗余,并自动节省数据库文件中的空间?

在将其添加到数据库之前,我是否需要确保不同行中的相同文本是相同的字符串对象?如果是这样,我如何检测新的文本片段是否与现有数据库中的任何地方匹配?

最佳答案

不会,Core Data 不会尝试分析您的数据以避免重复。如果您想保存 1000 万个具有相同属性的对象,您将获得 1000 万个副本。

如果您想避免创建重复的实例,则需要在创建新实例之前提取匹配的实例。一般做法是

  1. 根据表明您的应用程序重复的任何标准,获取与新数据匹配的对象。对包含您不想重复的属性的提取使用谓词。
  2. 如果您发现任何内容,请 (a) 使用您拥有的任何新值更新您找到的实例,或者 (b) 如果没有新值,则不执行任何操作。
  3. 如果您没有找到任何内容,请创建一个新实例。

关于cocoa - Core Data/SQLite 是否压缩冗余信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20181696/

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