0

我的项目中有两个数据库文件。

  1. 在 assets 文件夹中可用(使用 SqliteOpenHelper 类打开)
  2. 在运行时创建(使用 SqliteOpenHelper 类创建和打开)

哪个是最佳实践?

  • 分别保留两个数据库并使用两个不同的类打开那些(扩展 SqliteOpenHelper 类)
  • 保留资产数据库并在现有数据库中创建额外的表并使用相同的 Helper 类

我正在尝试对资产数据库和运行时创建数据库使用相同的 Helper 类。

我的应用程序也有带有多个片段和多个游标加载器的活动。我需要为 sqlite 使用通用帮助器类。

4

2 回答 2

0

我建议您将 sqlite db 文件从 assets 复制到文件目录 (/data/data/files/) 中onCreateSQLiteOpenHelper然后如果您需要在运行时创建额外的表,则可以使用相同的 db。这样可以减少使用 2 个 sqlite 文件和 2 个辅助类的开销。

于 2012-12-21T14:17:43.333 回答
0

始终尝试基于松散耦合进行设计,

所以你应该做一个类来进行sql操作,如果你需要不同的参数或不同的表,你应该封装它们。也许你可以创建一个 tableFactory ?但是你应该设计你的代码更有凝聚力和松散耦合......

于 2012-12-21T14:18:38.177 回答