如何使用某些值activeandroid初始化数据库

时间:2014-11-22 15:19:06

标签: android sqlite activeandroid

我正在使用ActiveAndroid作为ORM。 我想用一定的值初始化我的数据库表。只有一次,我不希望内容被复制。

或者是否有安装时执行sql脚本的解决方案。

我在文档中搜索但是我没找到它。 感谢。

1 个答案:

答案 0 :(得分:1)

我认为您可以检查您的表格,如果它是空的,则将数据插入其中。你可以有几个表,并且每个表都应该这样做

List <Category> categories = new Select()
        .from(Category.class)
        .where("your where clause here")    // your where clause
        .execute();

if (categories != null && categories.size() > 0 ) {
      // data is inserted before 
} else {
      Category newCategory = new Category("category");
      newCategory.save();
} 

List <Item> items = new Select()
        .from(Item.class)
        .where("your where clause")
        .execute();

if (items != null && items.size() > 0 ) {
      // data is inserted before 
} else {
      Item item = new Item("item");
      item.save();
} 

现在,新数据只有在您的表格中不存在且不会重复时才会插入到表格中。

在其他解决方案中,您可以使用预先填充的数据库并在您的应用程序中使用它。