2

ormliteからレコードを削除する方法についての前の質問と同様に、IDでレコードを取得できます。

public BO Retrieve(int id) throws SQLException {
        TEntity entity = this.dao.queryForId(id);

        return getBizObject(entity);
    }

しかし、IDではなくuser_idのような他のフィールドでレコードを取得するにはどうすればよいですか?

レコードを取得するためのクエリビルダーについて知りたい

4

1 に答える 1

8

これはRTFMの答えです。ORMLite は、QueryBuiderいくつかの良い例で十分に文書化されています。

http://ormlite.com/docs/query-builder

マニュアルから引用すると、次のようなものが特定のフィールドを照会します。

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;
于 2012-08-29T11:55:21.477 に答える