アンドロイドの初心者で、データベースでクエリを実行して、テーブルから単一の文字列値を返そうとしています。longを使用して行IDを選択することにより、1つのクエリでこれを正常に実行しました。ここに表示されます:
public String getHotness(long l) throws SQLException{
// TODO Auto-generated method stub
String[] columns = new String[]{ KEY_ROWID, KEY_NAME, KEY_HOTNESS };
Cursor c = ourDatabase.query(DATABASE_TABLE, columns, KEY_ROWID + "=" + l, null, null, null, null);
if (c != null){
c.moveToFirst();
String hotness = c.getString(2);
return hotness;
}
c.close();
return null;
}
しかし、文字列を使用して別のテーブルをクエリする必要がありますが、このクエリを実行すると、SQLExceptionが発生します。
public String getSingleQty(String aCoin) throws SQLException{
// TODO Auto-generated method stub
String[] columns = new String[]{ KEY_ROWID, KEY_NAME, KEY_QUANTITY, KEY_OUNCES, KEY_VALUE};
Cursor c = ourDatabase.query(DATABASE_TABLE, columns, KEY_NAME + "=" + aCoin, null, null, null, null); //<--this causes exception
String result = "";
if (c != null){
c.moveToFirst();
result= c.getString(2);
c.close();
return result;
}
c.close();
return null;
なぜこれが起こっているのか分かりません。両方のテーブルに同じ形式を使用しました。どんな助けでも大歓迎です。