欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > Android >内容正文

Android

Android开发7——android.database.CursorIndexOutOfBoundsException:Index -1 requested

发布时间:2025/4/16 Android 64 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Android开发7——android.database.CursorIndexOutOfBoundsException:Index -1 requested 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

android中数据库处理使用cursor时,游标不是放在为0的下标,而是放在为-1的下标处开始的。

也就是说返回给cursor查询结果时,不能够马上从cursor中提取值。

下面的代码会返回错误
User u = null;
SQLiteDatabase db = dbHelper.getReadableDatabase();
Cursor cursor = db.rawQuery("select * from user where id = ?", new String[] { id.toString() });
Integer uid = cursor.getInt(cursor.getColumnIndex("id"));
String uname = cursor.getString(cursor.getColumnIndex("name"));
float uamount = cursor.getFloat(cursor.getColumnIndex("amount"));
u = new User(uid, uname, uamount);

 

正确的用法

User u = null;
SQLiteDatabase db = dbHelper.getReadableDatabase();
Cursor cursor = db.rawQuery("select * from user where id = ?", new String[] { id.toString() });
if (cursor.moveToFirst())
{
 Integer uid = cursor.getInt(cursor.getColumnIndex("id"));
 String uname = cursor.getString(cursor.getColumnIndex("name"));
 float uamount = cursor.getFloat(cursor.getColumnIndex("amount"));
 u = new User(uid, uname, uamount);
}

 

http://blog.sina.com.cn/s/blog_67aaf44401015xtl.html

转载于:https://www.cnblogs.com/chen110xi/p/3247317.html

总结

以上是生活随笔为你收集整理的Android开发7——android.database.CursorIndexOutOfBoundsException:Index -1 requested的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。