【发布时间】:2011-09-10 17:14:35
【问题描述】:
谁能向我解释一下 Core Data(显然是“数据存储”)和 SQLite 或 MySQL 之类的数据库之间的根本区别是什么?
我正在编写一个 iPhone 应用程序,需要一个静态数据表来显示。我认为核心数据将是一个不错的选择,所以我将所有东西都设置好并运行到数据库(对不起 - 数据存储),然后尝试导入我的数据(它在我导出为 CSV 的 excel 文件)。我在想这应该是一个直接的过程,就像我在 SQLite 和其他数据库中做过很多次一样,但经过大量研究后发现,唯一的“官方”方法是专门为我的数据编写一个解析器。
当我在 Apple 开发者论坛上问到这个问题时,我得到的回答基本上是“你是什么白痴,认为你可以直接导入数据而无需编写代码来做到这一点?核心数据不是一个数据库——它是一个数据存储!!”然而,就我的一生而言,我看不到区别。在我所看到的每一个方面,核心数据的行为都完全像一个数据库,有一种奇特的访问方式和足够的抽象,它可以使用各种文件格式来实际存储数据。事实上,我最终能够使用一个简单的 SQLite .import 命令导入我的数据,所以我真的不明白为什么这个概念对我最初问题的回复者来说如此陌生。
那么我在这里错过了什么?数据存储与数据库有什么根本不同,使得简单数据导入的概念对那些了解该技术的人来说完全陌生?
【问题讨论】: