Удаление строки из базы данных SQLite: Blackberry

Я использую Table Adapter Screen для создания макета, который отображает данные из базы данных в табличной форме. Я добавил поле кнопки в каждую строку макета, чтобы удалить эту конкретную строку. Ниже я прилагаю код для удаления. Он показывает исключение: ошибка логики SQL или отсутствующая база данных. Что-то не так с моим Query??? Нет проблем в функциях создания баз данных, таблиц, вставки, извлечения и т. Д. Пожалуйста, помогите мне здесь. Выдает ошибку в.prepare(); заявление.

    public void deletetarget(String cname) {

        Statement deletetarget = null;

        try

        {
            URI myURI = URI.create("file:///store/home/Databases/SampleDatabase.db");

            d.close();
            d = DatabaseFactory.open(myURI);

    deletetarget = d.createStatement("DELETE  FROM targetCity WHERE KEY_CITYNAME         ='"+cname+"'");

            deletetarget.prepare();

                deletetarget.execute();
            deletetarget.close();
            d.close();  
        }

        catch ( Exception e ) 

        {         

            System.out.println("Delete Statement Exception "+e);
            e.printStackTrace();
        }
    }

1 ответ

Закройте свою базу данных перед созданием URI.

Измените свой запрос напишите так...

deletetarget = d.createStatement("DELETE  FROM targetCity WHERE KEY_CITYNAME = '"+cname+"'");
Другие вопросы по тегам