例如如何在sqflite中存储复杂类型: 餐桌上的人(身份证,姓名,电子邮件,汽车列表); 汽车在哪里是具有ID和类型的实体? 有什么解决方案,例如如何存储它(例如Blob或在新表中并将其链接到人员表)?
答案 0 :(得分:2)
您不能在简单的表格中。我了解您的意思,例如,您想存储以下内容:
citizen = {
"name":"",
"id":"",
"childrens":{
children1:{
"name":"",
"id":"",
}
children2:{
"name":"",
"id":"",
}
}
}
这是因为sqflite是使用设备sqlite的工具,并且此数据库在apache软件下工作。这意味着Sqflite会存储数据,而sql DB会存储数据,而您不能在sql表中存储对象。
您应根据需要为每个复杂数据创建其他表。像这样(作为伪代码):
'CREATE TABLE Citizen ('
' id INTEGER PRIMARY KEY,'
' name TEXT,'
' children1Id INTEGER,'
' children2Id INTEGER,'
'); '
'CREATE TABLE Children ('
' id INTEGER PRIMARY KEY,'
' name TEXT'
')'
我希望这会对您有所帮助。
答案 1 :(得分:1)
这实际上与移动开发无关,而与SQL DB和更一般的数据库管理有关。
要直接回答,您需要使用car-id
创建汽车表,并且需要知道人与汽车之间的关系才能建立链接:
在前三种情况下,您将ID设置为一个ID(例如1-n:在车表中放置了字段owner-id
,它是所有者的ID)
在最后一种情况下,您需要使用以下内容创建匹配表:matching-id
car-id
person-id