0

是否可以使用 2 个不同的光标来选择表格:

这是一张桌子1

Cursor b = myDbHelper.getSchoolType();
String def = b.getString(0);

这是另一张桌子

c = myDbHelper.getAllSchoolData();
String abc = c.getString(0);

我尝试使用两个游标从两个表中检索数据,但它显示错误:

android.database.CursorIndexOutOfBoundsException : Index -1 requested, with a size of 2

请帮助...感谢各种答案

4

2 回答 2

1

默认情况下,光标指针指向第一个条目(行)之前的位置,因此您需要将其移动到适当的位置,然后才能从中读取数据。例如移动到第一个条目:

if(cursor != null && cursor.moveToFirst()) 
    String value = cursor.getString(0);
    ...
}

有类似的方法,如 moveToNext()、moveToLast() 等,更多信息请参见参考页

于 2012-10-14T13:30:57.357 回答
0

Cursor检索时索引放置在-1。您需要将其移至第一个结果。为此,您有不同的选择,但这就是我使用它的方式:

Cursor c = // Retreive your cursor;
if (c != null) {
    while(c.moveToNext()) {
        // Code for each row
    }
}

这将遍历所有游标行。

您应该始终阅读Android 教程或查看SDK 参考。学习阅读文档是程序员的一项基本技能。

于 2012-10-14T13:45:36.877 回答