私はormliteを使用して、Androidのsqliteデータベースを処理しています。残念ながら、dao.queryBuilder()。where()。eq()。queryFirst()を使用して予期しない結果が発生しています。ここ は私の関数である。Ormlite:なぜwhere.eq(columnname、value)が間違った結果を出すのですか?
public static Person getByEmail(Dao<Person, ?> dao, String email) {
try {
Log.e("queriedEmail", email);
return dao.queryBuilder().where()
.eq(Person.EMAIL_FIELD, email)
.queryForFirst();
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
私は実際に私が手に渡されている電子メールや人物オブジェクトをチェックしています。どちらも完全に異なる電子メールを持っています。
上記の機能は、私が間違っているつもりですどこの誰かが指摘することができればそれは素晴らしいことだ
public static Person getByEmail(MyApp app, String email) {
try {
return getByEmail(app.getDatabaseHelper().getDao(
Person.class), email);
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
によって呼び出されます。ありがとう!
あなたの答えはありがとうございました。実際の引数をクエリに渡す方法はあるのでしょうか?私は参照されたドキュメントを読んだが、私の答えを見つけることができませんでした。ありがとう! –
トレースログを有効にすると、argsも表示されます。 – Gray