2013-12-12 3 views
0

Я новичок в мире Android и имею проблему с идентификатором. Мне нужно то, что когда пользователь нажимает на новое совпадение, он вставляет новую строку в db. Это работает, и я получаю lastId, но теперь мне нужен этот идентификатор в следующих действиях. Как я могу сохранить этот идентификатор, чтобы использовать его в другом месте?как использовать последний id SQLite

Это, как я вставить новый матч:

public void newMatch(WedstrijdenGeschiedenis wedstrijd){ 

// 1. 
SQLiteDatabase db = this.getWritableDatabase(); 

// 2. 
DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy"); 
Date date = new Date(); 
ContentValues values = new ContentValues(); 
values.put(KEY_DATUM, dateFormat.format(date)); // get datum 

// 3. 
long lastId = db.insert(TABLE_WEDSTRIJD, // table 
null, //nullColumnHack 
values); // key/value -> keys = column names/ values = column values 
Log.d("New Match","ID ="+lastId); 

// 4. close 
db.close(); 

} 

так я вижу lastId в LogCat, но я не знаю, как сохранить его для дальнейшего использования. Я пробовал пустоту, но безрезультатно, что невозможно для пустоты. Извините за фиктивный вопрос

+0

Я не уверен, я понимаю ваш вопрос. Идентификатор, который вы возвращаете на 'lastId', является идентификатором, который был автоматически создан как ваш первичный ключ для этой записи. Он уже хранится в базе данных. –

+0

Почему? База данных знает, что идентификатор, и если вы вставляете его из другого действия, он все равно это узнает и использует другой идентификатор (обычно только один выше). – zapl

ответ

1

void изменения в long и добавить оператор возврата, который возвращает lastId

public long newMatch(WedstrijdenGeschiedenis wedstrijd){ 
    // Your other code 
    return lastId; 
} 

к нему доступ:

long lastId= db.newMatch(new WedstrijdenGeschiedenis()); 
+0

В моей деятельности я делаю это: MySQLiteHelper db = new MySQLiteHelper (this); db.newMatch (новый WedstrijdenGeschiedenis()); Итак, как мне получить идентификатор? –

+1

Это серьезный вопрос? см. обновленный ответ – Kuffs

+0

да это так. извините за мое невежество и спасибо за вашу помощь! Это то, что мне нужно –

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