Android 存储在数据库中的树状结构

Android 存储在数据库中的树状结构,android,sql,database,sqlite,database-design,Android,Sql,Database,Sqlite,Database Design,因此,我正在开发一个图书跟踪应用程序,我需要存储有关图书的数据。使用对象,我将存储一个author对象列表,其中包括系列对象。那些会有书的东西 将其转换为数据库的最佳方式是什么?将使用SQLite。您将根据对象结构和关系创建表 似乎您拥有的是一个作者(表),其中包含许多系列(表)系列有许多书籍(表)。如果我错了,请纠正我,我没有那么好地理解你的最后一句话 如果我是正确的,那么您需要外键,如下所示: 系列表上的作者id,以及books表上的系列id,以链接回父表进行查询。如果有帮助,请告诉我 由于

因此,我正在开发一个图书跟踪应用程序,我需要存储有关图书的数据。使用对象,我将存储一个author对象列表,其中包括系列对象。那些会有书的东西


将其转换为数据库的最佳方式是什么?将使用SQLite。

您将根据对象结构和关系创建表

似乎您拥有的是一个
作者
(表),其中包含许多
系列
(表)<代码>系列有许多
书籍
(表)。如果我错了,请纠正我,我没有那么好地理解你的最后一句话

如果我是正确的,那么您需要外键,如下所示:
系列表上的
作者id
,以及books表上的
系列id
,以链接回父表进行查询。如果有帮助,请告诉我

由于一个作者可以写很多书,而且一本书可以有几个作者,因此可能需要一个关系表(也称为透视表或连接表)。一些DMB还允许用户对自己实施外键约束。(即,您使用特殊语法指定外键,服务器将不允许您以破坏约束的方式修改表;您不能插入具有不存在的外键的行(没有作者的书),也不能删除外键依赖的行(数据库中仍有书的作者))。我知道SQLite和MySQL支持这一点。此外,根据您在后端使用的语言,您还可以在那里指定外键约束和关系。感谢所有这些,这正是我所想的,但对我来说似乎有点做作。