2013-02-17 1 views
0

Любой поможет мне получить данные столбца из id (INTEGER PRIMARY KEY).Данные столбца базы данных SQLite SQLite (строка) получают с помощью столбца Id

Мой код ниже:

String selectQUERY = " SELECT * FROM " + dbh.TABLE_CONTACTS.toString() +" WHERE "+ dbh.KEY_ID +"="+ "1"; 
Cursor cr = db.rawQuery(selectQUERY, null); 
    if (cr.moveToFirst()) { 
    do 
    { 
    newArr.add(cr.getString(1)); 
    } while (cr.moveToNext()); 

} 
for(int i=0;i<newArr.size();i++) 
    { 
     System.out.println("id pos :- "+newArr.get(i)); 
    } 

Примечание: - newArr тип Строка ArrayList.

Спасибо.

+0

Попробуйте использовать ОРМ инструменты, чтобы сделать SQLLite в Android. Инъекционный код непосредственно быстро приводит к проблемам (http://ormlite.com/) –

ответ

1

Вы не дали много деталей, но это выглядит, как вы можете использовать: cr.getLong(0)

Cursor cr = db.rawQuery(selectQUERY, null); 
while (cr.moveToNext()) { 
    // Do something with cr.getLong(0) here 
    newArr.add(cr.getString(1)); 
} 
+0

Перед циклом while вы должны иметь 'cr.moveToFirst()'. –

+1

'moveToNext()' делает то же самое, когда индекс равен -1, и если я использую 'moveToFirst()' с этим циклом, он пропустит первую запись ... (Обратите внимание, что я переключился с цикла do-while на более простой цикл while.) – Sam

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