Как получить значение первой строки первого столбца (первая ячейка) из базы данных sqlite в Android-приложении? - PullRequest
0 голосов
/ 28 февраля 2012

Я работал над примером приложения для вставки данных в SqliteDb и пытался получить значение первого столбца первой строки из базы данных (значение первой ячейки). Я реализовал код для хранения данных в базе данных следующим образом:

private SQLiteDatabase sqLiteDatabase;

 //create table MY_DATABASE (ID integer primary key, Content text not null);
private static final String SCRIPT_CREATE_DATABASE =
"create table " + MYDATABASE_TABLE + " ("
+ KEY_ID + " integer primary key autoincrement, "
+ KEY_CONTENT1 + " text not null, "
+ KEY_CONTENT2 + " text not null);";

для вставки данных

public long insert(String content1, String content2){

ContentValues contentValues = new ContentValues();
contentValues.put(KEY_CONTENT1, content1);
contentValues.put(KEY_CONTENT2, content2);

return sqLiteDatabase.insert(MYDATABASE_TABLE, null, contentValues);
} 

из приведенного выше кода я могу сохранить данные в БД, но как я могу получить последнее вставленное значение KEY_CONTENT1 из той же БД?

пожалуйста, любое тело, помогите мне

Ответы [ 2 ]

1 голос
/ 28 февраля 2012

Возвращаемое значение insert() - это идентификатор строки, который вы только что создали. Используйте это, чтобы запросить KEY_CONTENT1. Это был бы безопасный способ (гораздо более безопасный, чем временная переменная для хранения значения KEY_CONTENT1)

0 голосов
/ 28 февраля 2012

вам нужно запустить запрос, чтобы получить последний вставленный идентификатор строки, а затем использовать этот идентификатор, чтобы получить строку, чтобы получить желаемый столбец:

SELECT last_insert_rowid();

или попробуйте сделать это:

SELECT KEY_CONTENT1 FROM Your_Table_Name WHERE KEY_ID IN (SELECT last_insert_rowid());
...