У меня есть эта функция, которая должна возвращать объект по ID из базы данных. Хотя по запрошенному идентификатору есть данные, данные не возвращаются. Может ли кто-нибудь помочь мне решить эту проблему.SQLITE не возвращает запрошенные данные
Код:
public ChildRecord getChild(int id) {
ChildRecord child = null;
Log.v("--", "success13s ");
Cursor c = database.rawQuery("SELECT * FROM child " + "WHERE childID="
+ id, null);
Log.v("--", "success1 2");
if (c != null)
if (c.moveToFirst()) {
do {
int childid = c.getInt(0);
String parent1 = c.getString(1);
String parent2 = c.getString(2);
String name = c.getString(3);
String dob = c.getString(4);
int gender = c.getInt(5);
String height = c.getString(6);
String weight = c.getString(7);
String etnicity = c.getString(8);
int type = c.getInt(9);
child = new ChildRecord(childid, name, dob, gender, height,
weight, etnicity, type, parent1, parent2);
} while (c.moveToNext());
}
Log.v("--", "success1 ");
return child;
}
Проблема заключается в линии
Cursor c = database.rawQuery("SELECT * FROM child " + "WHERE childID="
+ id, null);
Какое значение имеет 'id' в этой строке? Означает ли это значение в таблице? – Simon
да, но я пытаюсь выяснить, что-то не так. –
Каков тип 'childID' в базе данных? Неявное преобразование типа (например, от типа 'blob' до' int') может привести к неожиданным результатам. – Trinimon