问题描述
- Android 关闭database的时机
- 通过query()方法返回一个cursor对象。但是database是在query()方法中打开的。
如果在query()方法中关闭database,返回的cursor对象就无法使用。
query()方法如下public Cursor query(String table String[] columns String selection
String[] selectionArgs String groupBy String having
String orderBy String limit) {
Cursor cursor = null;SQLiteDatabase database = mDataBaseOpenHelper.getReadableDatabase(); cursor = database.query(table columns selection selectionArgs groupBy having orderBy limit); database.close(); return cursor;}
解决方案
Cursor cursor = null;//把这句话放在方法的外面让它作为一个全局变量你放在方法里它就是一个局部变量了;
当你这个方法执行完之后它也就消失了
如果回答对您有帮助请采纳
时间: 2025-01-29 16:51:27