Java androidsqlite查询和游标处理多行
我有一个查询,(我正在使用Java androidsqlite查询和游标处理多行,java,android,sqlite,cursor,Java,Android,Sqlite,Cursor,我有一个查询,(我正在使用rawQuery()) 从中选择* 然后,我使用游标存储它返回的内容。从他们那里我想做的是从第一排开始cursor.moveToFirst()然后逐列获取每一列,并将其特定值存储在变量中。然后我想换到下一行,做同样的事情。所以我想我的问题是如何让游标处理多个列 谢谢,我可能在这里遗漏了一些东西,你不会有一个嵌套的循环吧 外部循环循环通过每个记录: while (cursor.moveToNext()) { ... // inner loop here ..
rawQuery()
)
从中选择*
然后,我使用游标存储它返回的内容。从他们那里我想做的是从第一排开始cursor.moveToFirst()
然后逐列获取每一列,并将其特定值存储在变量中。然后我想换到下一行,做同样的事情。所以我想我的问题是如何让游标处理多个列
谢谢,我可能在这里遗漏了一些东西,你不会有一个嵌套的循环吧 外部循环循环通过每个记录:
while (cursor.moveToNext()) {
...
// inner loop here
...
}
内部循环将循环通过每个列
for (i=0; i<cursor.getColumnCount(); i++) {
...
String var1 = cursor.getString(i);
...
}
for(i=0;iI知道这已经被接受,但是ado{}while(cursor.moveToNext());
工作得更好,因为如果您先选中.moveToNext,您会跳过第一条记录…从经验中学到…您确定吗?返回并调用moveToNext()时,光标通常位于位置-1将其移动到第一行。此外,使用您的逻辑,do{}内的代码块将始终至少执行一次,即使光标不包含任何记录。
for (i=0; i<cursor.getColumnCount(); i++) {
...
String var1 = cursor.getString(i);
...
}