无法从数据库中检索任何数据

Can't retrieve any data from database

我已将现有数据库导入我的 Android Studio 项目。我正在尝试 运行 对数据库进行搜索查询并将结果提供给我的回收站视图,但似乎我从数据库中获得的所有内容都是空的或类似的....我尝试删除 WHERE 参数但没有工作。也许这是一个愚蠢的问题,但这是我的第一个真实世界的项目,我有点迷茫,感谢任何帮助。

    class BackgroundRunnable implements Runnable {
        private String name;

        public BackgroundRunnable(String name) {
            this.name = name;
        }

        @Override
        public void run() {
            Log.d(TAG, "code is in the Runnable");
            final Map<Integer, String> backgroundmap = new HashMap<>();

            DatabaseAccess mydatabase = DatabaseAccess.getInstance(getContext());
            mydatabase.open();
            Cursor cursor = mydatabase.SearchbyName();

            if (cursor != null && cursor.moveToFirst()) {

                for (int i = 0; i < cursor.getCount(); i++) {
                    Log.d(TAG, "MainFragment code in cursor result:" + cursor.getString(cursor.getColumnIndex("name")));
                    backgroundmap.put(cursor.getInt(cursor.getColumnIndex("id")), cursor.getString(cursor.getColumnIndex("name")));
                    cursor.moveToNext();
                }

                cursor.close();

                mainHandler.post(new Runnable() {
                    @Override
                    public void run() {
                        keyList.addAll(backgroundmap.keySet());
                        valueList.addAll(backgroundmap.values());
                        adapter.setvalues(keyList, valueList);
                    }
                });

            }
            mydatabase.close();
        }
    }

经过 2 天的摸索,我找到了答案。简而言之:在终端或类似工具中使用 sqlite 创建数据库,不要像 DB Browser 那样使用外部 .exe。我注意到我创建并从 DB Browser 导入的数据库显示为空,即使在 DB Browser 中检查会显示其他情况。我重新创建了表和值,但无济于事。然后我用另一个名字创建了一个新数据库并更改了我的数据库助手 class,工作起来非常棒.... –