我只需要使用greendao返回一个列。这是SQL查询:
SELECT NAME FROM PERSON
我该如何使用greendao?
如果要执行原始查询(daoSession.getDatabase),Greendao确实可以提供对基础数据库的访问 - 在这种情况下,您可能会感到比Greendao替代方案更有效将涉及使所有人和迭代结果迭代以提取名称(使用persondao.loadall()轻松完成)。使用ORM库的想法是使用人员对象,并访问其上的名称属性。例如person.getName()。
public static ArrayList<ArrayList<String>> rawQuery(final String query) {
SQLiteDatabase db = DBHelper.getDaoSession().getDatabase();
Cursor cursor = db.rawQuery(query, null);
retList = new ArrayList<ArrayList<String>>();
ArrayList<String> list = new ArrayList<String>();
if (cursor.moveToFirst()) {
do {
list = new ArrayList<String>();
for (int i = 0; i < cursor.getColumnCount(); i++) {
list.add(cursor.getString(i));
}
retList.add(list);
} while (cursor.moveToNext());
}
if (cursor != null && !cursor.isClosed()) {
cursor.close();
}
return retList;
}
使用此尊敬的人让我知道您想要更多吗?