2

在 iOS 项目中使用多个表的最佳方法和方法是什么,FMDB 是否支持表之间的关系?我应该使用 Coredata 还是 FMDB 包装器?

4

2 回答 2

2

无论您想做什么,都可以使用 Core Data 或 FMDB + SQLite。

基本上,如果以下情况之一为真,我建议使用 SQLite。

  • 性能真的很重要
  • 您已经拥有来自其他地方的庞大 SQLite 数据库
  • 您计划以某种方式使数据库跨平台

查看这篇博文,了解 SQLite 和 Core Data 之间的区别。

然而,在大多数情况下,Core Data 是更好的选择。Core Data 是一个很棒的框架,可以帮助您保持一致性(使用对象图)并且非常易于使用。它的表现受到了不好的评价,但实际上并没有那么糟糕。例如,过度获取是用于提高性能的常见事物。这意味着获取大量数据,然后过滤掉您真正想要的数据。这在 iOS 设备中非常有效,因为它们的 RAM 现在真的非常好。用它!

此外,如果你打算使用 Core Data,你应该明白它不是 SQLite 的包装器。您不应该像往常一样考虑表格。在 Core Data 中,您有一个包含实体而不是表的对象图。

结论:

除非您已经在其他地方拥有 SQLite 数据库表单,否则请使用 Core Data,或者性能很重要(我的意思是很多)。

于 2013-11-12T12:41:53.423 回答
1

没有一个很好的问题。这取决于项目。

在我看来,如果您已经有一些数据要导入到应用程序中,并且您将面临数据库中的大量数据,那么您应该选择纯数据sqlite(也许是 FMDB)。

如果您连接到 REST,想使用 TableViews,从空数据库开始CoreData将为您提供正确的答案。

FMDB 只是一个包装器,sqlite所以它会有关系,因为 sqlite 有。

于 2013-11-12T12:38:49.207 回答