我是DBFLow的新手。 我想根据where子句制作返回一行的aquery ..我似乎没有找到带有和的where子句。
String phone = uname_pass[0];
String pass = uname_pass[1];
List<User> userList = SQLite.select().from(User.class).where("phone ?",phone ).execute();
我想检索phone = uname_pass[0];
和password = uname_pass[1]
;
什么是正确的查询?
答案 0 :(得分:1)
1)同步:
List<User> userList = SQLite.select()
.from(User.class)
.where(User_Table.phone.eq(uname_pass[0], User_Table.password.eq(uname_pass[1]))
.queryList();
你也可以这样写(用&#34;。和#34;在这种情况下。你可以选择&#34;。或&#34;和其他运算符而不是&#34;。和&#34 ;)
List<User> userList = SQLite.select()
.from(User.class)
.where(User_Table.phone.eq(uname_pass[0]))
.and(User_Table.password.eq(uname_pass[1]))
.queryList();
2)异步:
SQLite.select()
.from(User.class)
.where(User_Table.phone.eq(uname_pass[0]),User_Table.password.eq(uname_pass[1]))
.async()
.queryListResultCallback(new QueryTransaction.QueryResultListCallback<User>() {
@Override
public void onListQueryResult(QueryTransaction transaction, List<User> tResult) {
//your list will be tResult
}
}).execute();