//查询所有数据按联系人姓名升序排序的方法
public List<Account> queryAll() {
SQLiteDatabase db = helper.getReadableDatabase();
Cursor c = db.query("account", null, null, null, null, null,
"name COLLATE LOCALIZED asc");
List<Account> list = new ArrayList<Account>();
while (c.moveToNext()) {
long id = c.getLong(c.getColumnIndex("_id")); // 可以根据列名获取索引
String name = c.getString(1);
String balance = c.getString(2);
String family = c.getString(3);
String office = c.getString(4);
String email = c.getString(5);
String work = c.getString(6);
String group = c.getString(7);
list.add(new Account(id, name, balance,family,office,email,work,group));
}
c.close();
db.close();
return list;
}
Cursor c = db.query("account", null, null, null, null, null,"name COLLATE LOCALIZED asc");
/*
* name:是联系人名的一个拼音列,系统在增加联系人时,会自动加入一个。
* 例如:李明, 对应的name的值就为 li 李 ming 明,所以在数据库就可以进行排序。
* COLLATE LOCALIZED 是使用本地的排序规则,这个和使用的语言有关系。
*/