将SQL查询的结果保存到ArrayList Android

时间:2011-08-31 11:45:09

标签: android sqlite arraylist

我正在尝试理解如何将android中的SQL查询结果保存到arraylist中。实际上我发现了一些问题,但没有一个能回答为什么我的代码错了。所以这就是我要做的事情:

        String query = null;
        query = "SELECT * FROM users WHERE objectId = "+objectId+" AND serverName "+serverName;

        SQLiteDatabase db;

        // Insert results from query in database.
        ArrayList <String[]> result = new ArrayList<String[]>();
        ResultSet rs = db.execSQL(query);
        int columnCount = rs.getMetaData().getColumnCount();
        while(rs.next())
        {
            String[] row = new String[columnCount];
            for (int i=0; i <columnCount ; i++)
            {
               row[i] = rs.getString(i + 1);
            }
            result.add(row);
        }

错误是说我无法将void转换为ResultSet。 任何建议如何解决这个或哪个是正确的方法。

提前致谢

1 个答案:

答案 0 :(得分:1)

打开数据库进行读取后,使用db.query或db.rawQuery获取可用于创建ArrayList的游标

cursor = db.rawQuery(<query>, null);
            if(cursor.getCount() > 0)
            {
                cursor.moveToFirst();
                //add to list here 
            }