OrmLite - Как получить количество удаленных строк? - PullRequest
0 голосов
/ 04 декабря 2018

Android-приложение, использующее ORMlite с SQLite.Вот мой метод, который удаляет несколько строк из таблицы:

private static boolean apply(Dao<NotificationInvoice, Integer> invoiceDao) {
    boolean isSuccess = false;
    try {
        String sql ="DELETE from notification where ownerkey not in ("123","456")";
        GenericRawResults<String[]> rawResults = invoiceDao.queryRaw(sql);
        isSuccess = true;
    } catch (SQLException e) {
        if (BuildConfig.DEBUG)
            Log.e(TAG, e.getMessage(), e);
    }
    return isSuccess;
}

Это работает.Успешно удаляет N записей из таблицы.Ницца.Вопрос в том, как я могу получить количество удаленных строк, не выполняя второй запрос?

1 Ответ

0 голосов
/ 20 декабря 2018

Вы можете использовать DeleteBuilder из OrmLite .

DeleteBuilder deleteBuilder = invoiceDao.deleteBuilder();
deleteBuilder.where().notIn("ownerkey", new String[]{"123", "457"});
deleteCount = deleteBuilder.delete()
...