新开的项目需要内置一个 SQLite 数据库,内置的库会提前灌入一些基本数据信息以减少客户端和服务器之间的交互。之前一直都是使用 SQLite Administrator 在灌数据,但这个工具一直存在编码问题,用着不是很舒服。这次对 SQLiteExpert 进行了测试,发现 SQLite Expert Professional 版具有文件导入功能,并且能完美的解决编码问题。
**注意:**这里要强调的是只有 SQLite Expert Professional [专业版] 具有文件导入功能,SQLite Expert Personal [个人版] 是不具备该功的。
1. 准备数据
数据的准备如下图所示,第一行为表的列名,列名下填充对应的数据。
2. 保存为 CSV 文件
默认的 Excel 文件是无法被 SQLite Expert 识别的,这里需要将 Excel 文件另存为可被 SQLite Expert 识别的 CSV 格式文件。
3. 处理编码
CSV 文件保存成功后,还需要对文件编码进行处理。用记事本打开 CSV 文件,另存为 UTF-8 编码。
4. 新建数据库
数据准备完毕后,使用 SQLite Expert 新建一个数据库,一定要注意数据库的编码也必须是 UTF-8。
5. 导入文件
在建好的数据库上右键选择【Import Text File(CSV,TSV)】,在弹出的对话框中选择之前准备的 CSV 文件,选择编码为 UTF-8,同时指定表名,选择使用第一行作为表的列名,点击 【Start】开始导入数据,日志窗口会打印出数据导入的结果。
6. 导入成功
至此,数据导入就完成了。紧接着就是数据库的使用,内置数据库一般会以压缩包的形式存放到项目的 Assets 目录下,使用的时候需要将该目录下的压缩包释放到项目的数据库目录。这里提供了一个工具类 DBUtils@AndroidUtil 进行释放。使用方式如下:
1 | DBUtils.release(context, base.zip, base.db); |