Я разрабатываю небольшое приложение, в которое я вставляю два значения в базу данных (номер телефона и адрес). Сделано с вставкой. Теперь я хотел бы найти соответствующий адрес для определенного номера телефона. Я следил за учебником от Android-хоста, и это получилось довольно хорошо. Моя проблема в том, что когда я вставляю конкретный номер телефона (который уже хранится в базе данных) и нажимаю кнопку поиска, My TextView
не отображает соответствующий адрес. Он просто отображает «имя» в этом тексте. Я уверен, что я нигде не закодировал текст «имя». И я тоже не получаю никакой конкретной ошибки.Извлечение правильного значения из базы данных sqlite в Android
Вот код для моего buttonSearch:
buttonSearch.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
long phone_number=Long.parseLong(searchEditText.getText().toString());
String text=db.getAddress(phone_number);
fetchedAddressTextView.setText(text);
}
И это getAddress
метод, определенный в моем Helper классе:
public String getAddress(long phone_number) {
// TODO Auto-generated method stub
SQLiteDatabase db = this.getReadableDatabase();
try {
Cursor c=db.query(TABLE_CONTACTS, new String[]{
KEY_ADDRESS
},
KEY_PH_NO + "=" + phone_number,
null,
null,
null,
null);
if (c != null) {
c.moveToFirst();
}
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return KEY_ADDRESS;
}
KEY_ADDRESS
должен возвращать адрес, соответствующий номеру, я искал в виде строки.
Так что любая помощь с этой проблемой оценивается. Или любые другие указатели, касающиеся простой выборки хранимых значений в базе данных (другие, например, vogella или androidhive), приветствуются.
Спасибо заранее.
спасибо тонну @Amit. работал как шарм! –