sqlite问题,请教高手 这是我调用数据库,在地图上标注的程序但是在logcat里出现了这样的错误我分明有关闭数据库的语句啊,为什么还是出错了,请高手解释 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我觉得你应该是读数据库时的问题,DBAdapter是你自己封装的,你看封装的有没有问题,问题应该不是你贴的代码。 DBAdaper.java这个类441行出现问题,自己跟踪调试哈吧! 错误提示是数据库关闭的异常。可能是你的应用程序中没有关闭cursor吧。cursor.close(); 是你的数据库没有关闭,建议你在调用时,返回的是一个List;比如在你的fetchAllDataRENTAL(),可以这样写:public ArrayList<HashMap<String ,String>> fetchAllDataRENTAL(){ ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String,String>>(); SQLiteDataBase db = ........; Cursor cursor = .........; while(cursor.moveToNext()){ HashMap<String,String> map = new HashMap<String,String>(); ........... ........... list.add(map); } cursor.close(); db.close(); return list;}///////////////////////////////////////////////////////在你的UI上,用的是ArrayList,而不是数据库中的Cursor,这样就将UI层与数据库层分离开了,这在MVC,C/S等设计模式上都有的, try catch后加个final,在里面关闭游标。 根据错误的提示 应该是你122行 导致啦441行错误 这个应该是你数据库的问题 你可以打断点调试一下 如果代码正常 会一行一行的执行 如果有错误会跳转到android的源代码处 有关Android布局嵌套的问题 target选择AVD时只显示一个AVD(android) 请问:如何在代码中重启手机? android模拟器启动出错 手机上文件下载和传统的文件下载有什么区别? android两个工程调用,包名相同冲突怎么办? 如何让软件下载新版本并更新 请问如何设置AlertDialog的样式? 【求教】【首次测试一堆报错T_T】 求教怎样安装好Androidstudio 怎么在ListView上显示Bitmap或者Drawable类型的图片 一个很奇怪的问题,郁闷!!!!tell me why!!!
public ArrayList<HashMap<String ,String>> fetchAllDataRENTAL(){
ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String,String>>();
SQLiteDataBase db = ........;
Cursor cursor = .........;
while(cursor.moveToNext()){
HashMap<String,String> map = new HashMap<String,String>();
...........
...........
list.add(map);
}
cursor.close();
db.close();
return list;
}
///////////////////////////////////////////////////////
在你的UI上,用的是ArrayList,而不是数据库中的Cursor,这样就将UI层与数据库层分离开了,这在MVC,C/S等设计模式上都有的,