2011-08-10 7 views
8

.createや他のものを使う代わりに、ormliteでクエリを書く方法はありますか?私は自分自身に答えることができないので、ORMLiteでクエリを書く

SELECT name FROM client 

EDIT: 私はもう少し検索していたと思い、とにかく私はこのようなQueryBuilderでそれを行う方法を見つけ、あなたはこの単純な例のためどのように私を見るしてくださいすることができます:

newDao.query(newDao.queryBuilder().where.eq("name",valueofname) 

誰かが、素晴らしいことだ完全なクエリを作成する方法を知っているそれ以外の場合は、私はこのソリューション

答えて

27
私が代わりに.creatを使用してのormliteでクエリを書くことができますどのよう

に固執するだろう場合それとも他の何か?

ORLEiteサイトでこれを行う方法については、豊富なドキュメントがあります。 query builderのセクションは次のとおりです。

私は、あなたが "完全なクエリ" によって何を意味するかわからないが、あなたの例では、いくつかの調整で動作します:。

一覧< ...>結果= newDao.queryBuilder()ここで、()。 eq( "name"、valueofname).query();

Dao階層は特定のClientオブジェクトを返すように設計されているため、名前を返すだけでは意味がありません。あなただけの名前は、名前の列を指定することができますしたい場合のみ戻ります:。

... clientDao.queryBuilderを()selectColumns( "名前")ここで、()...

これは、データベースから抽出された名前フィールド(および存在する場合はidフィールド)だけを持つClientオブジェクトのリストを返します。

名前の文字列が必要な場合は、RawResults featureを使用できます。