如何将json数组元素存储到sqlite db

时间:2016-03-03 11:17:07

标签: android sqlite

我想解析以下json并将其添加到sqlite数据库。

{
  "group_id": "12",
  "group_name": "ABC Group",
  "employees": [
    {
      "domain_id": "123",
      "from": "abc@gmail.com",
      "to": "def@gmail.com"
    },
    {
      "domain_id": "123",
      "from": "abc@gmail.com",
      "to": "def@gmail.com"
    }
  ]
}

问题在于,我不确定表格设计必须如何添加所有这些细节,尤其是json数组值。什么是这种json的高效表设计

2 个答案:

答案 0 :(得分:1)

有几种情况:

  1. 您几乎没有数据库写入和多次读取(可能进行过滤,排序,分组)。 在这种情况下,最好将JSON解析为POJO(例如使用GSON库)并以关系方式将它们保存为表行(表组,表员工);

  2. 您有许多数据库写入和少量读取。 在这种情况下,您可以将JSON字符串保存为纯文本,并在需要时解析它们(您可以使用单个表格)。

答案 1 :(得分:1)

根据我的理解,创建2个表,即GroupEmployee

在您的群组表格中,只需创建两列 - idname

在此id中创建此表的主键。

在您的员工表格中,创建4列 - domain_idfromtogroup_id

Employee表中的group_id字段将充当Group表的id字段的外键。