2012-04-18 6 views
3

を挿入した後に自動インクリメント値を取得します。は、これは私がDBにいくつかのデータを挿入するために使用していますinsertメソッドである

public long insertBooking(String userId,int roomId,Timestamp checkInTime, Timestamp checkOutTime){ 
    final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
    ContentValues contentValues=new ContentValues(); 

    contentValues.put(USER_ID, userId); 
    contentValues.put(ROOM_ID, roomId); 
    contentValues.put(CHECK_IN, dateFormat.format(checkInTime)); 
    contentValues.put(CHECK_OUT, dateFormat.format(checkOutTime)); 

    return database.insert(MRM_BOOKING_DETAILS_TABLE, null, contentValues); 

} 

テーブルには自動インクリメントフィールドを持っているMRM_BOOKING_DETAILSがbooking_idと呼ばれます。新しい行を挿入すると、この列の値は1だけインクリメントされます。挿入が完了した行のbooking_idを返すことは可能でしょうか?

または、新しく挿入された行のbooking_idを返すには、別のSQL Selectクエリを記述する必要がありますか?

+0

AFAIK、insertBookingメソッドから返されるのは挿入されたIDです。 – Cristian

答えて

10

長いinsertId = database.insert(MRM_BOOKING_DETAILS_TABLE、null、contentValues); この行自体は、挿入行のbooking_idを返します。

関連する問題