android - 手动创建数据并将其插入 SQLite

标签 android sqlite

我正在构建一个需要在本地使用数据库的 Android 测验应用程序。 SQLite 似乎是我需要的。

数据库将包含问题和答案(由我手动输入,而不是使用应用程序输入),以及一些存储用户分数、进度等的表格。

我的问题是如何手动创建表并将数据从其他来源(或使用 INSERT INTO 查询插入)导入到 Android 的嵌入式 SQLite 中?在线教程只教我如何从头开始并通过应用程序界面进行...

最佳答案

有多种方法可以做到这一点。

  • 您可以创建包含问题和答案的数据库作为 Assets 文件夹中的 Assets 。这个预先存在的数据库然后被复制一次,可能利用 SQLiteAssetHelper管理数据库的副本。

    • 有许多可用的 SQLite 管理类型工具,例如 SQlite studio、DB Browser for SQlite、Navicat,可用于创建数据库和加载数据。然后,您只需将保存的文件复制到 assets 文件夹中(请注意,对于 SQLiteAssethelper,该文件需要位于 assets/databases 文件夹中)。

    • 限制/复杂性/缺点是问题和答案是否会随着时间的推移而改变(例如,添加了更多的问题和答案)。

  • 另一种方法是定义数据库结构并将问题作为外部文件提供,而不是读取并用于将问题插入数据库的预先存在的数据库(作为 Assets )。通过一些考虑/规划,这可以相对简单地处理持续存在的问题。

  • 另一种方法是将问题放在集中式服务器上(Firebase 可能适合此问题)而不是 Assets 文件。该应用程序将连接到服务器并将问题加载到数据库中。

关于android - 手动创建数据并将其插入 SQLite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52380821/

相关文章:

android - 无障碍服务和 WebView ?

android - 如何反序列化我发送到我的网络服务的数据?

android - 新列的 SQLite 升级中的重复列名

Android 波纹效果不显示高程

android - 网页 View 和 Css3

java - 如何保存应用程序数据以供 OS X 中的用户使用

android - 尝试在 android 中创建表时出现 SQlite 异常

android java.lang.IllegalStateException : Couldn't read row 0, col 0 来自 CursorWindow

sqlite - 如何创建sqlite3数据库

android - 如何使用 firebase 按时间顺序显示聊天用户列表?