2014-01-23 25 views
1

我在android中使用SQLite數據庫。我需要根據某些條件更新記錄。但是有多條記錄符合條件,因此所有記錄都得到更新。我只需要更新最後一個。請幫幫我。如何僅更新android中SQLite數據庫的最後一個記錄?

在此先感謝

這裏是我的代碼

public void UPDATE_INVOICE(int invoice_id,int owner_id,int vehicle_id,String invoice_date,String invoice_time,String dest,String distance,String validity_date, int qty,String local_var) 
{ 
     SQLiteDatabase db=getWritableDatabase(); 

      ContentValues values = new ContentValues(); 
      values.put(INVOICE_NUMBER, invoice_id); 

      values.put(INVOICE_DATE, invoice_date); 
      values.put(INVOICE_TIME, invoice_time); 


      values.put(INVOICE_VALIDITY_DATE, validity_date); 
      values.put(INVOICE_QTY, qty); 
      values.put(INVOICE_LOCAL, local_var); 

      db.update(TABLE_INVOICE_DETAILS, values, INVOICE_OWNER_ID_REF+"="+owner_id+" and "+INVOICE_VEHICLE_ID_REF+"="+vehicle_id, new String[]{}); 


     } 
+0

哪裏是你的代碼? – GrIsHu

+3

將行添加到數據庫的時間再添加一列到數據庫。現在你將有一個唯一的關鍵字來識別所有最後插入的行... –

+0

好的。我會試試看 – Snehal

回答

0

如果其他人會發現問題,那麼可能的答案是:

update table1 set last_accessed_dt = datetime('now') where _id = (SELECT MAX(_id) FROM table1); 
相關問題