Я пытаюсь, чтобы моя функция удаления возвращала логическое значение, работает оно или нет.Пользователь вводит номер, и если есть строка с этим номером, он удаляет эту строку.Проблема, с которой я сталкиваюсь, состоит в том, что, если я ввожу неправильный номер, никакая ошибка не происходит.Затмение заставило меня попытаться поймать оператор db.delete.Однако, когда я использую отладчик и ввод и неверный номер, оператор try работает и пропускает часть catch.Я пытаюсь выяснить, как заставить оператор delete возвращать логическое значение, если оно не работает, таким образом, я могу использовать оператор if для создания тоста, который показывает ошибку.Вот код оператора удаления
public void deleteInspection(long _id)throws Exception
{
db.delete(DB_TABLE,"_id=" + _id , null);
}
Вот оператор try catch - диалоговое окно с предупреждением.
new AlertDialog.Builder(this)
.setTitle("Delete a report")
.setMessage("Enter the Id number of the report to delete")
.setView(addView)
.setPositiveButton("Submit",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
String id = idNum.getText().toString();
long primaryId = Long.parseLong(id);
info.open();
try {
info.deleteInspection(primaryId);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
info.close();
dbInfo();
}
})
.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// TODO Auto-generated method stub
}
}).show();
}