Android sqlite delete фактически не удаляет строки - PullRequest
4 голосов
/ 30 июля 2011

Я использую довольно простую команду, чтобы попытаться удалить строки в базе данных SQLite. Однако после успешного выполнения команды строки остаются в БД!?

SQLiteDatabase dbinst = mydb.getWritableDatabase();

try
{
  dbinst.beginTransaction();
  int del = dbinst.delete("sms", "wassent = ? or waserror = ? or wasaborted = ?", new String[] {"1", "1", "1"} );   
  clog.debug("Rows deleted: " + del);
  dbinst.setTransactionSuccessful();
}
catch(Exception e)
{
  clog.error(e.toString(),e);
}

dbinst.close();

Регистратор говорит «строк удалено: 3», исключений не возникает. Тем не менее, при выполнении запроса сразу после этого строки все еще там?

Есть очевидная вещь, которую я делаю здесь неправильно?

1 Ответ

2 голосов
/ 30 июля 2011

Вы должны позвонить endTransaction, чтобы фактически зафиксировать изменения.Более подробную информацию можно найти здесь: beginTransaction () документация

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...