我使用以下代码访问表中的上一条记录,
Cursor c = db.rawQuery("SELECT * FROM newcarDB WHERE rowid < " +iCurrentRowid+ " ORDER BY rowid DESC LIMIT 1",null);
我需要配置它,以便当我到达表的顶部时,(rowid = 1)查询停止。以前我已经使用了条件,所以如果rowid = 1,则返回()。问题是如果rowid = 1的记录已被删除且顶行的rowid为2,那么我的查询有问题,我的应用程序崩溃了。
解决这个问题的最佳方法是什么?
答案 0 :(得分:0)
解决这个问题的最佳方法是什么?
在访问光标中的任何数据之前,请确保它指向有效行。检查光标上moveTo...()
调用的返回值,仅当它是true
时,使用get...()
方法访问光标数据。