除了使用Cursor之外,还有其他方法可以从SQLite数据库中获取数据吗?

时间:2013-03-01 18:18:18

标签: java android android-sqlite android-cursor

我很有意思:我可以使用其他东西从数据库中检索数据,而不是像这样使用Cursor

Cursor fetch_ = database_.rawQuery("SELECT " + USER_ID + " FROM " + TABLE_NAME, null);
if (fetch_.moveToFirst()) {
    do {
        String data_ = fetch_.getString(fetch_.getColumnIndex("userId"));
    } while (fetch_.moveToNext());
}
fetch_.close();

还有其他一些方法吗?可能是我可以直接在诸如HashMap<>之类的Java数据结构中获取数据吗?

1 个答案:

答案 0 :(得分:4)

是的,您可以使用一些ORM库,请参阅:Any good ORM tools for Android development?

我个人最喜欢的是ActiveAndroid图书馆(https://www.activeandroid.com/

请参阅文档:https://github.com/pardom/ActiveAndroid/wiki


例如

@Table(name = "Items")
public class Item extends Model {
    @Column(name = "Name")
    public String name;

    @Column(name = "Category")
    public Category category;
}

获取所有内容应该像

List<Item> items = new Select().from(Item.class).execute();