ANDROID:我可以使用WHERE子句作为String进行SELECT吗?

问题描述

| 因此我的数据库中有数据,并且category的值设置为\“ Breakfast \” 当我使用whereClause执行以下查询时 1:最终字符串,其中子句= RECIPE_ID + \“ = 1 \”; 它向我返回该RECIPE_ID的数据 但是当我使用whereClause执行查询时 2:final String whereClause = RECIPE_CATEGORY + \“ = \'\” + category.trim()+ \“ \'\”; 它不返回任何内容...所以我想我的代码可以正常工作,因为它返回结果 RECIPE_ID,但我不知道为什么它不返回第二个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
        );
上面的代码不会返回任何结果。这有什么问题吗?     

解决方法

        您确实需要在这里提出问题。发布代码对您不利。如果您的问题如标题所示,那么可以将搜索子句作为字符串进行。只是去哪里。例如
dataId = 5
,其中暗指\'where \'。 编辑:要解决我错过的底部问题,​​可能有很多事情是错误的。一种可能是您在数据库中没有任何数据。或者执行where子句,但您的数据都不符合条件。检查您的数据库。我们对此无能为力。