我正在尝试在我的Android项目中实现DBFlow。我已经能够创建一个表并添加行和列。我有两列,ID和名称。现在我想从表中检索名称,并按ID按降序排列。我在Github DBFlow页面中找到了这个示例语法
SQLite.select()
.from(table)
.where()
.orderBy(Customer_Table.customer_id, true)
.queryList();
SQLite.select()
.from(table)
.where()
.orderBy(Customer_Table.customer_id, true)
.orderBy(Customer_Table.name, false)
.queryList();
但我无法根据“Customer_Table.customer_id”在该代码中的含义。当我尝试将方法orderBy()时,Android Studio建议(NameAlias nameAlias,boolean)作为参数。如何在表格中添加NameAlias?有人可以帮帮我吗?
答案 0 :(得分:3)
在项目中实现DbFlow时,它会自动为使用@Table注释注释的每个表模型构建一个表类。
即,如果你有一个名为Customer的表,那么相应的类将是Customer_Table,如果你的表是User,那么相应的类将是User_Table。
让这成为您的客户表:
@Table
public class Customer extends BaseModel {
@Column
String customer_name;
}
如果您想在Customer表中使用客户名称订购结果,请使用
SQLite.select()
.from(table)
.where()
.orderBy(Customer_Table.customer_name, true)
.queryList();
答案 1 :(得分:0)
在“Customer_Table.customer_id”中,Customer_Table是表的名称,customer_id是列名。您可以从数据库中获取名称和ID,并以编程方式对数据列表进行排序,也可以使用此查询
mDb.query(true,PT_TABLE,new String [] {KEY_PID,KEY_NAME}, null,null,null,null,KEY_PID +“DESC”,null);