public Exercise getExerciseDetail(int id) {
    SQLiteDatabase db = this.getWritableDatabase();

    String selectQuery = "SELECT * FROM " + TABLE_EXERCISE_DETAIL + " WHERE " + KEY_ID + " = " + id;
    Cursor c = db.rawQuery(selectQuery, null);

    if (c != null) c.moveToFirst();
    Exercise exercise = new Exercise();
    exercise.setId(c.getInt(c.getColumnIndex(KEY_ID)));
    exercise.setName(c.getString(c.getColumnIndex(KEY_NAME)));
    exercise.setDescription(c.getString(c.getColumnIndex(KEY_DESCRIPTION)));

    selectQuery =
        "SELECT * FROM "
            + TABLE_EXERCISE_DETAIL_CATEGORY
            + " WHERE "
            + TABLE_EXERCISE_DETAIL
            + KEY_ID
            + " = "
            + exercise.getId();
    c.close();
    c = db.rawQuery(selectQuery, null);
    while (c.moveToNext()) {
      exercise.addCategory(
          Category.valueOf(c.getString(c.getColumnIndex(TABLE_EXERCISE_CATEGORY + KEY_NAME))));
    }
    c.close();
    return exercise;
  }