gpt4 book ai didi

iphone - 何时使用 Core Data,何时使用 Sqlite?

转载 作者:行者123 更新时间:2023-12-03 20:27:57 25 4
gpt4 key购买 nike

我正在学习 Core Data,之前我在我的一个项目中使用过 SQLite。我的问题是,我应该在什么场景下使用 Core Data 和 SQLite?我读过 Core Data 的一些优点,它提供了设计数据结构的可视化方式、访问数据的抽象级别以及 SQLite 可以在多平台上使用,但是有什么与数据大小相关的吗?如果数据量大于我们应该使用 Core Data,反之亦然?

最佳答案

核心数据:

  1. 主要功能是图形管理(尽管读写磁盘是一个重要的支持功能)

  2. 对存储在内存中的对象进行操作(尽管它们可以从磁盘延迟加载)

  3. 与完全成熟的对象一起工作,这些对象可以 self 管理许多行为,并且可以针对进一步的行为进行子类化和自定义

  4. 非事务性、单线程、单用户(除非您围绕提供这些内容的核心数据创建完整的抽象)

  5. 仅在内存中运行

  6. 需要保存过程

  7. 可以非常快速地在内存中创建数百万个新对象(尽管保存这些对象会很慢)

  8. 将数据约束留给程序的业务逻辑端

数据库或 SQLite:

  1. 主要功能是存储和获取数据

  2. 对存储在磁盘上的数据进行操作(或最小化增量加载)

  3. 存储“哑”数据

  4. 可以是事务性的、线程安全的、多用户的

  5. 可以删除表格并编辑数据,而无需加载到内存中

  6. 永久保存到磁盘(并且经常崩溃恢复)

  7. 创建数百万个新行可能会很慢

  8. 提供数据约束,例如“唯一”键

引用以下链接 http://cocoawithlove.com/2010/02/differences-between-core-data-and.html

关于iphone - 何时使用 Core Data,何时使用 Sqlite?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11211209/

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