我试图在我的sqlite中更新数据库,但是它给出了错误:
错误:不兼容的类型:int无法转换为boolean
以下是我的代码:
public boolean updateEntry(long _rowIndex, String entryName, double entryTel, double entrySellp, int entryQty, String entrydate, int entryStaff, Context c)
{
ContentValues values = new ContentValues();
values.put(ENTRY_NAME, entryName);
values.put(ENTRY_TEL, entryTel);
values.put(ENTRY_SELLINGPRICE, entrySellp);
values.put(ENTRY_QTYSOLD, entryQty);
values.put(ENTRY_DATESOLD, entrydate);
values.put(ENTRY_STAFFDISCOUNT, entryStaff);
// updating row
return _db.update(DATABASE_TABLE, values, KEY_ID + " = " + _rowIndex , null);
}
return语句用红色下划线标出。我的陈述有什么问题?我已经多次重新检查,但似乎无法弄清楚是什么错误。
答案 0 :(得分:1)
update()
方法没有返回boolean
它会返回一个显示更新行的整数,因此请使用int更改updateEntry
的返回类型
答案 1 :(得分:1)
return _db.update(DATABASE_TABLE, values, KEY_ID + " = " + _rowIndex , null);
db.update()
方法返回int值,使用下面的代码:
int returnValue= _db.update(DATABASE_TABLE, values, KEY_ID + " = " + _rowIndex , null);
return returnValue==1 ? true : false;