有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何从多个本地sql数据库表中获取结果?

我正在安卓 studio中创建一个应用程序,我有一些问题存储在一个数据库中,该数据库是在用户第一次打开应用程序时创建的,我创建了另一个数据库,用户可以添加他的问题,我需要从这两个数据库中随机抽取一个问题。每个数据库有3个相同的列1。问题2。加热3。性别 这是我已经试过但不起作用的

    public Cursor getQuestion(int HeatLevel, int Gender) {
            SQLiteDatabase db = this.getWritableDatabase();
            String query = "SELECT question, heat, gender FROM " + TABLE_NAME +
                    " WHERE heat = " + HeatLevel + " AND  gender = " + Gender +
                    " UNION ALL" +
                    " SELECT question, heat, gender FROM " + SECOND_TABLE_NAME +
                    " WHERE heat = " + HeatLevel + " AND gender = " + Gender +
                    " ORDER BY RANDOM() LIMIT 1";
            Cursor data = db.rawQuery(query, null);
            return data;
        }

因此,应用程序会根据难度和玩家性别从数据库中选择一个问题。 上面的代码生成一个错误,表示“没有这样的表”,第二个数据库的名称好像找不到它一样

我在另一个活动中使用此

    public void getQuestion(int HeatLevel, int Gender) {
            Cursor question = QuestionDB.getQuestion(HeatLevel, Gender);
            if (question.moveToNext()) {
                QuestionTextView.setText(question.getString(0));
            }
        }

我是sql新手,所以可能查询是错误的


共 (0) 个答案