Чтобы создать запрос, который ищет учетную запись по имени и паролю, вы должны сделать следующее:
QueryBuilder<Account, String> qb = accountDao.queryBuilder();
Where where = qb.where();
// the name field must be equal to "foo"
where.eq(Account.NAME_FIELD_NAME, "foo");
// and
where.and();
// the password field must be equal to "_secret"
where.eq(Account.PASSWORD_FIELD_NAME, "_secret");
PreparedQuery<Account, String> preparedQuery = qb.prepareQuery();
Это мой код, который я использую в своем проекте для получения PropertyModel из SQLite с использованием ORMLite
public ArrayList<PropertyPicModel> selectArgumentQueryPropertyModel(int property_id, Dao<PropertyPicModel, Integer> dao)
{
try {
QueryBuilder<PropertyPicModel, Integer> queryBuilder = dao.queryBuilder();
Where<PropertyPicModel, Integer> where = queryBuilder.where();
SelectArg selectArg = new SelectArg();
// define our query as 'property_id = ?'
where.eq(ORMLiteConfig.PROPERTY_ID, selectArg);
// prepare it so it is ready for later query or iterator calls
PreparedQuery<PropertyPicModel> preparedQuery = queryBuilder.prepare();
selectArg.setValue(property_id);
// later we can set the select argument and issue the query
ArrayList<PropertyPicModel> picList = (ArrayList<PropertyPicModel>) dao.query(preparedQuery);
return picList;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
MyLog.e("Excep selectArgumentQuery " +e.toString());
}
catch (Exception e) {
MyLog.e("Excep selectArgumentQuery " +e.toString());
}
return null;
}
В этом примере сгенерированный SQL-запрос будет примерно равен:
SELECT * FROM account WHERE (name = 'foo' AND passwd = '_secret')
https://github.com/AshishPsaini/ormlite-examples/tree/master/android/HelloAndroid
http://ormlite.com/docs/in