2012-03-26 115 views
1

我有兩個表「TABLE_EXAM」和「TABLE_QUESTION」。我需要將考題編號存儲在表格中。我的問題是,如何凝膠考試表的最後一個ID?
在此先感謝.. 已編輯的問題
這是我的示例代碼。如何從sqlite獲取最後一條記錄的_id?

public int getLastExamId() 
{ 
    int id2=0; 
    try 
    { 
     SQLiteDatabase db=this.getWritableDatabase(); 
     Cursor cursor=db.rawQuery("SELECT * from SQLITE_SEQUENCE", null); 
     if(cursor.moveToLast()) 
     { 
      id2=cursor.getInt(0); 
     } 
    } 
    catch(Exception e) 
    { 
     e.printStackTrace(); 
    } 
    return id2; 
} 
+2

'SELECT MAX(_ID)from TABLE_EXAM'。 – st0le 2012-03-26 13:28:50

+1

最後一條記錄是指最後插入的記錄? – 2012-03-26 13:31:36

+1

你可以將ID存儲在公共var .. – Hasmukh 2012-03-26 13:33:04

回答

4

如果您正在使用

db.insert(TABEL_NAME, null, values); 

插入數據然後從該函數的返回值是該行的ID。

+0

根據http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html#insert%28java.lang.String, %20java.lang.String,%20android.content.ContentValues%29它似乎是正確的,但我認爲它正在返回受操作影響的行數,因爲插入新記錄時我總是得到1。 – vikas 2012-04-03 04:19:56

+0

其實它在我的情況下工作完美...我檢查了這一點,很多次的構造...使用調試器和日誌 – 2012-04-03 07:57:14

相關問題