【问题标题】:Ideal sqlite database design理想的sqlite数据库设计
【发布时间】:2011-01-22 19:45:10
【问题描述】:

我对数据库设计比较陌生,因此我们将不胜感激。我正在开发一个 iPhone 应用程序,并且一直卡住,所以我认为我的数据库设计是垃圾。在我的应用程序中,我基本上需要从数据库中提取三个项目。一个书名值、一个章号值和一个段内容值(由多个不同的记录组成)。该应用程序仅显示许多不同的短书。在每本短书中,他们从他们想要的章节中选择,然后单击章节将加载一个详细视图,其中包含一批相关的片段,以创建可读的内容。因此,一章有许多与该章专门相关的部分。一本书有许多与该书相关的章节,并且有几本不同的书。对于我的数据库设计,每本书都应该是自己的单独表格吗?有 book_title、chapter_number 和 segment_content 的列吗?我基本上只是在尝试输出我的数据时遇到问题,因为它可能组织得不太好。任何想法或见解将不胜感激!谢谢

【问题讨论】:

    标签: iphone database-design sqlite


    【解决方案1】:

    我知道您在询问数据库设计,但我真的建议您使用 Core Data 来解决您尝试使用 model 的小问题。然后你不必担心你刚刚处理对象的所有 sqllite 细节,就是这样。 book 是所有 iPhone 的一个很好的参考,在那个链接上有更多的 Core Data 文章。

    【讨论】:

    • 您好,感谢您的洞察力。我已经考虑过核心数据路由,但我唯一的挂断是关于数据源,数据来自哪里?现在,我将 Web 内容放入电子表格中,然后进入我正在从我的应用程序中读取的 sql db。它如何处理核心数据?我了解对象模型的工作原理,因为它们更易于访问,但我唯一的问题是我将从哪里获取我的内容,因为有成千上万行:)
    • 无论您使用的是 Core Data 还是 SQLite,您都面临着同样的难题。在某些时候,您仍然需要导入数据。
    • 好的,所以使用应用程序的核心数据仍然从 sqlite 数据库中检索其信息?它只是一种更方便的方式来管理导入?
    • 他的意思是您仍然需要将数据导入“某物”,无论是数据库还是对象模型,您仍然需要以任何一种方式进行相同的加载。您可以轻松地进行网络服务调用以获取数据并创建/更新对象,这就是我正在做的。
    【解决方案2】:

    通常您必须为应用程序中的每个实体创建一个表。您的实体是 Book、Chapter、Segment。因此,您有三个表,其中 Chapter 中的行引用 Book 中的行和 Segment 引用 Chapter 中的行并且可能是 Book。

    【讨论】:

      猜你喜欢
      • 2017-06-28
      • 2016-07-09
      • 2015-04-30
      • 1970-01-01
      • 2012-12-10
      • 2013-09-25
      • 1970-01-01
      • 2010-12-02
      • 1970-01-01
      相关资源
      最近更新 更多