我需要检查我的数据库列之一中是否已有值,因此我编写了以下代码来执行此操作:
public Cursor getTitle(long rowId) throws SQLException {
Cursor mCursor = db.query(DATABASE_TABLE, new String[]
{KEY_TOTAL_HOURS, KEY_TOTAL_MINUTES}, KEY_ROWID +"=" + rowId, null, null, null, null);{
mCursor.moveToFirst();
return mCursor;
}
}
但是我返回的光标给出了
android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0
出了什么问题?
最佳答案
您应该检查 moveToFirst 的返回值确保返回有效行:如果没有,它将返回 false。似乎没有包含您指定的 ID 的行。
关于java - Sqlite 查询返回 mRowIdColumnIndex 为 -1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7251087/