我想显示我存储在数据库中的所有记录
c = db.DBhelper.getChamp1(c.getCount);
//startManagingCursor(c);
int j = 0;
stateNameArray = new String[c.getCount()];
c.moveToFirst();
while(!c.isAfterLast()) {
stateNameArray[j] = c.getString(0);
j++;
Log.i("DEBUG_SQL","" + c.getString(0)+ " "+c.getString(j));
c.moveToNext();
}
//String resultat = ;
Log.i("DEBUG_SQL","" + c.getColumnIndex("article"));
我在编写 c.getCount
时遇到错误 – 为什么?当我写一个像 1 或 2 或 3 这样的数字时...这有效。
如果我写
c = db.rawQuery("SELECT * FROM loan", null);
我得到一个错误,但是如果我写
db.rawQuery("SELECT * FROM loan WHERE _id=1", null);
行得通。为什么?
最佳答案
至少,我发现这个日志语句有问题,其中 c.getString(j) 没有意义。随着 j 变大,它可能会触发错误。
Log.i("DEBUG_SQL","" + c.getString(0)+ " "+c.getString(j));
您打算使用语句 c.getString(j) 访问哪些数据?
关于 getCount 错误。我认为以下错误是错字。但这是与 getCount 相关的错误所在吗?
c = db.DBhelper.getChamp1(c.getCount);
但我不应该假设 - 你永远不会知道。它应该显示为(在方法调用中添加方括号)。
c = db.DBhelper.getChamp1(c.getCount());
正如@Barak 提到的,这个声明是怎么回事?
关于android - 显示存储在 SQlite 数据库中的所有记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10572247/