自动填充数据库。(Android /新手)

时间:2013-06-04 14:13:27

标签: android performance sqlite

有没有办法从文本文件创建数据库?我想在应用程序中包含一个预先填充的数据库,但找不到合适的单词来搜索我需要的内容。我希望将文本文件中的每个单独的单词(名称列表)分配给它自己的ID并存储在数据库中。我希望所有这一切都在我的最后完成,以便在用户下载应用程序时已经设置了数据库并准备就绪。我知道你可以在。资源文件夹中存储一个.db,但它是.db的实际生成,让我感到难过。

2 个答案:

答案 0 :(得分:1)

从您的数据生成几个INSERT语句,针对您选择的sqlite工具执行,保存db文件,完成。或者发送sql语句以便随应用程序插入。两种方式都有效。

因此,您可以在本地使用某些工具(例如SQLite Manager,我个人使用Pentaho Data Integration/Kettle)来创建db文件。然后将该文件放在/ assets文件夹中并随应用程序一起发送。在第一次启动时,您将文件从/ assets复制到db文件夹(有很多关于如何执行此操作的教程)。

或者,在启动时,您可以从头开始创建数据库,而不是使用sql语句预先创建(使用任何您认为合适的工具)的db文件,然后根据新创建的数据库读取和执行该文件。< / p>

我做到了两种方式,两种方式都有效,你必须在设置中尝试更少的麻烦/更快。

答案 1 :(得分:1)

如果文本文件格式正确(例如CSV格式),则可以通过sqlite3可执行文件导入。 See here

sqlite> create table myTable (id integer, col_a integer, col_b integer, col_c text);
sqlite> .separator ","
sqlite> .import myFile.csv myTable

如果您想通过GUI进行操作,我建议SQLiteStudio。手动填充表格很容易,您也可以直接执行查询(工具 =&gt; 打开查询编辑器)。如果要从那里导入,首先创建要填充的表,然后突出显示它并选择 Tables =&gt; 将数据导入表格