无法从sqlite db检索数据

我创建了一种从数据库中检索所有收藏夹的方法,但未获取任何数据。


我添加了一个Log.e来检查数据计数,其数据如下:


I/SQLiteAssetHelper: successfully opened database FoodDB.db

fav: []: : is count

因此,请告诉我确切的错误在哪里,以及如何从活动中调用该方法以获取所有数据。


getAllFavorites方法


public List<Favorites> getAllFavorites (String foodId) {

        SQLiteDatabase db = getReadableDatabase();

        SQLiteQueryBuilder qb = new SQLiteQueryBuilder();


        String[] sqlSelect = {"FoodId", "Name", "Image", "Description", "Components",

                "MenuId", "UserName"};

        String sqlTable = "Favorites";


        qb.setTables(sqlTable);


        Cursor c = qb.query(db, sqlSelect, "FoodId=?", new String[]{foodId}, null, null, null);


        final List<Favorites> result = new ArrayList<>();

        if (c.moveToFirst()) {

            do {

                result.add(new Favorites(

                        c.getString(c.getColumnIndex("FoodId")),

                        c.getString(c.getColumnIndex("Name")),

                        c.getString(c.getColumnIndex("Image")),

                        c.getString(c.getColumnIndex("Description")),

                        c.getString(c.getColumnIndex("Components")),

                        c.getString(c.getColumnIndex("MenuId")),

                        c.getString(c.getColumnIndex("UserName"))

                ));

            } while (c.moveToNext());


        }

        db.close();

        return result;

    }


qq_遁去的一_1
浏览 210回答 2
2回答

烙印99

下载“ sqlite expert personal”并将您的数据库文件复制到“ sqlite expert personal”。您可以在其中查看表和值,还可以写下与在应用程序中编写的查询相同的查询,并确定其是否正常运行。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java