Cursor必须调用cursor1.moveToNext()方法才能开始取数据,需要使用while循环
while (cursor.moveToNext()) {
sb.append(cursor.getInt(1));
}取数据的时候,那个索引是从0开始的,但是取Int型的时候,缺没有取到数据,采用的是如下方法:
sb.append(cursor1.getInt(0));调试看了一下,Cursor1里面有个mColumnNameMap中存放了{hospital_name=4, hospital_imageurls=2, hospital_area=0, hospital_id=1, hospital_about=5, hospital_infor=3}
看到对应的列hospital_id=1
sb.append(cursor1.getInt(1));
取到了想要的数据。
最好是采用如下的方法:
cursor.getInt(cursor.getColumnIndex(Constant.HOSPITAL_ID))这样取数据有保证一些。

本文介绍了如何使用Cursor正确地从数据库中获取特定类型的数据。通过示例解释了使用索引和getColumnIndex方法的区别,并强调了后者更为可靠。
755

被折叠的 条评论
为什么被折叠?



