如何为ios问答应用程序构造sqlite表

如何为ios问答应用程序构造sqlite表,ios,sql,sqlite,Ios,Sql,Sqlite,我正在设计一个“测验”应用程序,其格式如下: 顶部的一个主要问题,然后是与该顶部问题相关的5个子问题,他们必须以1-5的比例回答,如本屏幕截图所示: 我想使用sqlite数据库,但我不确定如何构造它/有多少表以及列应该是什么 这是否有效: questionTbl:questionID,questionText(用于顶部的主要问题) 子问题BL:问题ID、子问题AID、子问题A、子问题A正确答案 子问题BTBL:问题ID、子问题BID、子问题B、子问题B正确答案 次级问题CTBL:等 次级问题:

我正在设计一个“测验”应用程序,其格式如下:

顶部的一个主要问题,然后是与该顶部问题相关的5个子问题,他们必须以1-5的比例回答,如本屏幕截图所示:

我想使用sqlite数据库,但我不确定如何构造它/有多少表以及列应该是什么

这是否有效:

questionTbl:questionID,questionText(用于顶部的主要问题)
子问题BL:问题ID、子问题AID、子问题A、子问题A正确答案
子问题BTBL:问题ID、子问题BID、子问题B、子问题B正确答案
次级问题CTBL:等
次级问题:等等
子问题bl:etc

或者我能用更少的桌子来减少它的复杂性吗

questionTbl:questionID,questionText
(对于顶部的主要问题)
,子问题a,子问题b,子问题c,子问题d,子问题e
答案BL:问题ID、子问题A正确答案、子问题B正确答案、子问题C正确答案、子问题D正确答案、子问题C正确答案


<> P>在回答问题之前,我们考虑一个例子:

问题:“从前有一只母猪和三只小猪……(继续讲三只小猪的故事)。”

子问题A:“第一只小猪的房子是什么做的?”

回答1:“稻草”
回答2:“棍子”
回答3:“砖块”
答复4:“钢铁”

假设该示例说明了您的问题将如何呈现,我可能会倾向于这样的实体关系模型:

  • 问题
    表格,用于列出顶级问题(例如,三只小猪的故事)

  • A
    子问题
    表格,列出“选择A”、“选择B”、…、问题(例如,“第一只小猪的房子是什么做的?”)

  • 如果需要,您甚至可以为与五个选项相关联的文本设置第三个实体,即1到5(例如“Straw”):

  • 我绝对不认为你想要“选择A”、“选择B”等的单独表格


    而且,记住,如果你要使用SQLite,考虑使用它,这使得它更容易。

    你是否比内核数据(表代替对象)更直接地使用SQL?我刚开始学习如何处理SQL,而且我被告知它比学习核心数据更容易。是这样吗?这完全取决于你目前的习惯。如果您熟悉OO,那么核心数据可能比纯SQL更容易。也许可以花10分钟浏览一下