与我之前的问题类似,如何再次从 ormlite 中删除记录我可以按 ID 检索记录为
public BO Retrieve(int id) throws SQLException {
TEntity entity = this.dao.queryForId(id);
return getBizObject(entity);
}
但是如何不通过 id 而是通过 user_id 等任何其他字段来检索记录?
我想了解用于检索记录的查询生成器
这是一个 RTFM 答案。ORMLite有 QueryBuider
很好的文档记录,有一些很好的例子:
引用手册中的内容,如下所示将查询特定字段。
QueryBuilder<Account, String> queryBuilder = dao.queryBuilder();
queryBuilder.where().eq(Account.PASSWORD_FIELD_NAME, "qwerty");
List<Account> accountList = queryBuilder.query();
用于定义各种比较的javadocsQueryBuilder
是在线的,并且用于定义各种比较的Where
对象 javadocs也提供了很好的信息。手册中还有一个部分是构建更复杂的查询。
此外,如果您只是查询单个字段,那么DAO 有一个 queryForEq(...)方法可以QueryBuilder
为您完成这些工作。
public static final
顺便说一句,如果您指的是在常量中定义它的字段的名称,建议您:
public class Account {
public static final String PASSWORD_FIELD_NAME = "password";
...
@DatabaseField(canBeNull = false, columnName = PASSWORD_FIELD_NAME)
private String password;