【问题标题】:Best way how to import data into Android's SQLite如何将数据导入 Android 的 SQLite 的最佳方法
【发布时间】:2012-08-24 02:23:18
【问题描述】:
我想问问你的意见,将数据导入 SQLite 数据库的最佳方式是什么。
- 创建 SQL 转储并将其放入 assert 文件夹并使用 rawQuery() 方法执行。
- 每个表都创建独立的和从 csv/xml 文档中读取的数据
-
复制完整的数据库,使用 InputStream/OutputStream
- 如果数据大小约为 1MB / 2000 条记录,并且更少
- 如果数据大小 >= 1MB
谢谢
【问题讨论】:
标签:
android
sqlite
import
【解决方案1】:
我经常创建一个JSON 文件并将其放在assets 目录中。然后我使用像GSON 这样的库将内容提取到模型类中,这样我就可以以面向对象的方式访问数据。然后,您可以使用通过模型类访问的数据插入/更新数据库
【解决方案2】:
复制原始 SQLite db 文件是最简单的方法。只需确保文件与 Android 上的 SQLite 版本兼容。您也可以通过SQLiteMan 等第三方工具打开这些文件
【解决方案3】:
将 SQLite 数据库复制到您的资产文件夹(您甚至可以将其 gz 以在某些设备上保留宝贵的空间,您可以使用“GZIPInputStream”解压缩它。
这种方法的唯一缺点是资产文件夹中的文件不能大于几个 MiB(我认为是 3,但可能因设备而异)。要使用更大的文件,请将数据库文件(或压缩后的 gz 文件)的扩展名更改为“.mp3”,您可以使用大于 3 MiB 的文件。