im в процессе построения массивной регистрации для моего приложения. Я мог бы использовать плоские файлы, но до этого я рассматривал sqllite db. Я хотел бы знать, есть ли способ создать базу данных и автоматическое удаление, если достигнут определенный размер байта на диске? Я также хотел бы сделать это на уровне стола. Поэтому, если размер таблицы превысил определенный максимум, я бы стереть всю таблицу и начать чистку. Я хотел знать, было ли во время создания таблицы в sql, если есть команда, которую я могу использовать для «запуска» этого?SQLlite Android Database, как автоматически удалить, если достигнут максимальный размер?
0
A
ответ
0
Чтобы вызвать что-то, используйте trigger.
SQLite не имеет встроенного механизма для определения размера байта таблицы; лучшее, что вы можете сделать, это подсчитать количество записей:
CREATE TRIGGER WipeOnOverflow
AFTER INSERT ON MyTable
WHEN (SELECT COUNT(*) FROM MyTable) > 1000
BEGIN
DELETE FROM MyTable;
END;
или:
CREATE TRIGGER DeleteOneRecordOnOverflow
AFTER INSERT ON MyTable
FOR EACH ROW
WHEN (SELECT COUNT(*) FROM MyTable) > 1000
BEGIN
DELETE FROM MyTable WHERE rowid = (SELECT MIN(rowid) FROM MyTable);
END;
+0
да, я знаю о триггерах. Их ключевая концепция, которую я отсутствовала, заключается в том, что мы можем удалить в зависимости от количества строк. Этот ответ приемлем для моей причины, спасибо. – j2emanue
Смежные вопросы
- 1. Максимальный размер вектора достигнут преждевременно
- 2. Достигнут максимальный размер кэша Prefetcher
- 3. Достигнут максимальный предел MaxOpenPreparedStatements
- 4. Firebase Realtime Database максимальный размер кеша в Android
- 5. Как измерить максимальный размер объекта, если известен максимальный размер кучи?
- 6. Android, максимальный размер буфера
- 7. SQLlite DataBase on Upgrade Application
- 8. Максимальный размер курсора Android
- 9. Достигнут максимальный уровень вложенных функций
- 10. ??? Максимальный предел рекурсии 500 достигнут
- 11. Данные стираются автоматически в SQLlite
- 12. Максимальный размер общей библиотеки Android
- 13. Максимальный размер BackStack в android
- 14. Исключение Crystal Reports: достигнут максимальный максимальный размер задания на обработку отчетов, заданный вашим системным администратором
- 15. Должен ли размер стека максимальный размер?
- 16. Android - Как установить максимальный размер для listview
- 17. Android: Как установить максимальный размер Spinner?
- 18. Достигнут максимальный уровень рекурсивности setlocal - setlocal
- 19. iText Максимальный размер шрифта
- 20. Можно ли удалить максимальный размер стека вызовов?
- 21. Java - Как преодолеть максимальный размер метода в автоматически сгенерированном коде
- 22. Android Database SQLLite AutoIncrement не увеличивающиеся и ограничение первичного нарушается
- 23. WebSql: транзакция отменяется, если достигнут предел размера
- 24. Максимальный предел рекурсии 500 достигнут Ошибка
- 25. mysql максимальный размер строки
- 26. Достигнут максимальный уровень вложенности функции «100», прерван
- 27. приложений Windows Query Database C# SQLlite
- 28. Если оператор не работает, если максимум достигнут
- 29. SQLlite Database не отображается в папке DDMS
- 30. jawampa максимальный размер websockt размер?
Почему вытирая всю таблицу? Разве не было бы смысла удалять только самые старые записи? –
Да, это также возможно. Есть предположения? – j2emanue