【问题标题】:android show random dataandroid显示随机数据
【发布时间】:2018-07-16 17:52:05
【问题描述】:

我有一些来自数据库的数据,我想随机显示,只有 5 个数据出现,我尝试使用 ORDER BY RAND () 但打开时应用程序崩溃

下面是我的语法查询

public List<Soal> getSoal(){
    List<Soal> listSoal = new ArrayList<Soal>();
    String query = "select * from tbl_soal ORDER BY RAND() LIMIT 5";

    SQLiteDatabase db = this.getReadableDatabase();
    Cursor cursor = db.rawQuery(query, null);

    if(cursor.moveToFirst()){
        do{
            Soal s = new Soal();
            s.setSoal(cursor.getString(1));
            s.setPil_a(cursor.getString(2));
            s.setPil_b(cursor.getString(3));
            s.setPil_c(cursor.getString(4));
            s.setPil_d(cursor.getString(5));
            s.setJwban(cursor.getInt(6));
            s.setGambar(cursor.getInt(7));
            listSoal.add(s);
        }while(cursor.moveToNext());
    }

    return listSoal;
}

那么错误在哪里,或者我的问题有什么解决方案?

【问题讨论】:

    标签: android sqlite android-studio


    【解决方案1】:

    您也可以查看此答案 https://stackoverflow.com/a/23628508/6672577

    public List<Soal> getSoal() {
        List<Soal> listSoal = new ArrayList<Soal>();
        String query = "SELECT * FROM table ORDER BY RANDOM() LIMIT 5";
    
        SQLiteDatabase db = this.getReadableDatabase();
        Cursor cursor = db.rawQuery(query, null);
        if (cursor != null) { // To check that cursor is not null.
            if (cursor.moveToFirst()) {
                do {
                    Soal s = new Soal();
                    s.setSoal(cursor.getString(1));
                    s.setPil_a(cursor.getString(2));
                    s.setPil_b(cursor.getString(3));
                    s.setPil_c(cursor.getString(4));
                    s.setPil_d(cursor.getString(5));
                    s.setJwban(cursor.getInt(6));
                    s.setGambar(cursor.getInt(7));
                    listSoal.add(s);
                } while (cursor.moveToNext());
            }
        }
        return listSoal;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-23
      • 1970-01-01
      • 2021-07-05
      • 2020-01-26
      • 2013-12-24
      • 2020-03-16
      相关资源
      最近更新 更多