Короче говоря, вы не используете SQLiteStatement , он предназначен только для / (возможности) возврата одного столбца одной строки в соответствии с: -
Представляетоператор, который может быть выполнен в отношении базы данных. Оператор не может возвращать несколько строк или столбцов, но поддерживаются результирующие наборы с одним значением (1 x 1). SQLiteStatement
Вместо этого вы бы использовали: -
SQLiteDatabase db = this.getWritableDatabase();
Cursor csr = db.query("tracking",null /* all columns aka */","track_id=?",new String[]{track_data.getText().toString()},null,null,null);
while (csr.moveToNext()) {
// and for each column value you wanted
my_value = csr.get??????(csr.getColumnIndex(the_column_name_as_a_string));
// e.g. another my_other_value = csr.get??????(csr.getColumnIndex(the_column_name_as_a_string));
}
- ?????? представляет многие методы, например, getInt, getLong .........
- см. Курсор
Или альтернативно вместо использования удобного метода query , вы можете использовать метод rawQuery , например
Cursor csr = db.rawQuery("Select * from tracking where track_id= ?",new String[]{track_data.getText().toString()});