从现有数据库创建一个新数据库(或只创建新表?)

时间:2013-04-10 02:28:55

标签: android database android-sqlite

我的应用程序正在与数据库(仅读取,存储在资产文件中)进行通信,以便用户可以显示此数据库中的内容列表。例如,可以在列表视图中从此数据库中显示几千个元素,用户可以单击任何元素并获取更多信息。

我想添加一个新功能,允许用户创建“收藏”列表。因此,每次用户点击数据库中的元素时,他都可以点击“添加到收藏夹”按钮,然后从主菜单中会出现一个“收藏夹”按钮,打开列表视图,只显示用户决定的元素首先添加。

我已经有一个扩展SQLiteOpenHelper的DatabaseHelper类,以及一个指定与我的第一个表交互的DatabaseAdapter类。

根据我的理解,我可以保留一个数据库(然后重新使用我的DatabaseHelper类)并创建一个新的DatabaseAdapter2类,定义新表的方法(添加新元素,删除元素等)。 )以及我桌子的领域。这样对吗?我不太确定因为我的DatabaseHelper是在“只读”中定义来保护我的主表免受任何修改,但第二个表应该是“写入+读取”所以也许最好有一个第二个databaseHelper ?这可能是一个微不足道的问题,但我找不到有关从现有表创建新表/数据库的更多信息。

1 个答案:

答案 0 :(得分:1)

您描述应用程序的方式,我会考虑将其全部作为一个数据库,即使它需要您打开mainTable进行编写。如果您正在从您的收藏夹数据库中读取数据,那么从mainTable数据库中提取后续数据将比从一个数据库中的两个表中提取复杂查询要慢得多。