Может ли sugarorm автоматически удалять поля, которые больше не используются?

Я начинаю с SugarORM и заметил, что он может автоматически добавлять поля без необходимости создания сценариев sql (просто увеличивая номер версии в manifest.xml)

Пример: ALTER TABLE CLIENT ADD COLUMN PRENOM TEXT перед первым использованием Client.Save()

Есть ли параметр, чтобы попросить SugarORM автоматически удалить больше не используемых полей таким же образом?

1 ответ

ALTER TABLE SQLite

SQLite поддерживает ограниченное подмножество ALTER TABLE, ALTER TABLE команда в SQLite позволяет пользователю переименовывать таблицу или добавлять новый столбец в существующую таблицу. Невозможно переименовать столбец, удалить столбец или добавить или удалить ограничения из таблицы.

В SQLite вы можете:

(1). создать новую таблицу как ту, которую вы пытаетесь изменить (без столбца для удаления)
(2). скопировать все данные (кроме столбца, который вы хотите удалить)
(3). уронить старый стол
(4). переименуйте новую таблицу в старое имя.

Так как android-sugarorm (sugarorm) использует SQLite под ним невозможно использовать ALTER TABLE удалить столбец (поле), чтобы это не делалось автоматически.

См. Также Перенос базы данных из предыдущей версии.
SQLite FAQ

Другие вопросы по тегам