我很乐意为您翻译有关IT技术的内容,这篇文章需要涉及Android Cursors,您需要进行概述并回答以下两个具体问题:
1 - 我有一个方法,在数据库查询后返回一个光标(Cursor)对象:
public static Cursor getVehicles()
{
SQLiteDatabase db = vehicleData.getReadableDatabase();
Cursor cursor = db.query(TABLE_NAME, GET_VEHICLES_FROM_CLAUSE, null, null, null, null, ORDER_BY);
return cursor;
}
为了做好清理工作,我在返回语句之前尝试使用db.close()。然而,这导致返回的光标不包含任何行。为什么会这样?
2 - 关闭游标和关闭数据库有什么区别?
3 - 如果光标是一个局部变量,我需要调用close吗,还是可以让垃圾收集器来清理它?
4 - 我的数据库很小,只被我的应用程序使用-我可以保持它的开放状态吗?