АНДРОИД: Могу ли я сделать SELECT с предложением WHERE как String? - PullRequest
0 голосов
/ 14 июня 2011

Итак, у меня есть данные в моей базе данных, и значение категории установлено на " Завтрак "

Когда я выполняю приведенный ниже запрос с , где Claus как

1: final String whereClause = RECIPE_ID + "= 1";

Он возвращает мне данные для этого RECIPE_ID

Но когда я выполняю запрос с , где Clause как

2: final String whereClause = RECIPE_CATEGORY + "= '" + category.trim () + "'";

Он ничего не возвращает ... Так что я думаю, мой код работает нормально, так как он возвращает результат RECIPE_ID, но я не знаю, почему он не возвращает данные за 2-й whereClause

Надеюсь, это имеет смысл ..

final String whereClause = RECIPE_CATEGORY + "='" + category.trim() + "'";
        // ask the database object to create the cursor.
        cursor = db.query(
                RECIPE_TABLE,
                new String[]{
                            RECIPE_ID, 
                            RECIPE_CATEGORY,
                            RECIPE_THIS_TITLE,
                            RECIPE_THIS_SUBTITLE,
                            RECIPE_THIS_DESCRIPTION,
                            RECIPE_THIS_IMAGE,          
                            RECIPE_THIS_CALORIES,
                            RECIPE_THIS_FAT,
                            RECIPE_THIS_SATURATED,
                            RECIPE_THIS_TRANS,
                            RECIPE_THIS_CARBS,
                            RECIPE_THIS_SODIUM,
                            RECIPE_THIS_SUGARS,
                            RECIPE_THIS_SERVINGS,
                            RECIPE_THIS_COSTPERSERVING,
                            RECIPE_THIS_INSTRUCTIONS,
                            RECIPE_THAT_TITLE,
                            RECIPE_THAT_CALORIES,
                            RECIPE_THAT_FAT,
                            RECIPE_THAT_SATURATED,
                            RECIPE_THAT_TRANS,
                            RECIPE_THAT_CARBS,
                            RECIPE_THAT_SODIUM,
                            RECIPE_THAT_SUGARS,
                            RECIPE_THAT_PRICE
                        },
                        whereClause, null, null, null, null
        );

Приведенный выше код не вернет никаких результатов. Что-то не так с этим?

1 Ответ

0 голосов
/ 14 июня 2011

Вам действительно нужно сформулировать вопрос здесь.Отправка кода не приносит вам пользы.Если ваш вопрос соответствует названию, то да, вы можете сделать условие поиска в виде строки.Просто оставь где.например, dataId = 5, где подразумевается «где».

Редактировать: чтобы ответить на вопрос внизу, который я пропустил, несколько вещей могут быть неправильными.Возможно, у вас нет никаких данных в базе данных.Или предложение where выполняется, и ни одна из ваших данных не соответствует критериям.Проверьте свою базу данных.Мы не можем помочь с этим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...