我正在尝试理解如何将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。 任何建议如何解决这个或哪个是正确的方法。
提前致谢
答案 0 :(得分:1)
打开数据库进行读取后,使用db.query或db.rawQuery获取可用于创建ArrayList的游标
cursor = db.rawQuery(<query>, null);
if(cursor.getCount() > 0)
{
cursor.moveToFirst();
//add to list here
}