2013-06-14 6 views
2

Учитывая следующий код:Как получить последний идентификатор после вставки записи?

sqLiteDatabase.execSQL("create table if not exists ACCOUNT (ID integer primary key autoincrement," + 
         "CASH LONG NOT NULL," + 
         "BANKID INTEGER NOT NULL," + 
         "ACCOUNTNO TEXT ," + 
         "DATE TEXT NOT NULL," + 
         "COMMENT TEXT);"); 

таблица создается в SQLite.

Как я могу получить последний идентификатор после добавления записи?

С помощью следующего кода:

contentValues.put("CASH", accountTO.getCash()); 
contentValues.put("DATA", DatePro.currentDate()); 
contentValues.put("BANKID", accountTO.getBankID()); 
contentValues.put("ACCOUNTNO", accountTO.getAccountNo()); 
contentValues.put("COMMENT", accountTO.getComment()); 

Long i = sqLiteDatabase.insert("ACCOUNT", null, contentValues); 

я -1.

+1

получить ID, который является максимальным –

+0

Возможный дубликат [Получить последнее вставленное значение из базы данных sqlite Android] (http://stackoverflow.com/questions/4017903/get-last-inserted-value-from-sqlite-database -android) –

+0

Идентификатор записи, который уже добавлен – user2049371

ответ

6
public long insert (String table, String nullColumnHack, ContentValues values) 

Возвращает rowID вновь вставленной строки, или -1, если произошла ошибка.

Смежные вопросы