Как "очистить" файл базы данных objectbox?

Скажите , как мне ждать (аналог VACUUM SQLite) файла базы данных? С сохранением идентификаторов объекта. Я не мог найти API. И мой код не работает:

 val all = boxStore.allEntityClasses
 for ( clazz in all ){
      val box = boxStore.boxFor( clazz )
      val box2 = boxStore2.boxFor( clazz )
      val ids = box.query().build().findIds()
      for ( id in ids ){
           val obj = box[id]
           box2.put( obj )
      }
  }

java.lang.IllegalArgumentException: идентификатор выше или равен внутренней последовательности идентификаторов: 1 (против 1). Используйте ID 0 (ноль), чтобы вставить новые объекты.

хорошая работа:

val obj = box[id]
(obj as Boxable).id = 0
box2.put( obj )

но тогда я теряю идентификатор, может быть, мне следует положиться на свое поле идентификатора и не использовать @Id для ссылки в моем приложении?

Boxable - абсолютный класс для всех сущностей в Box с @Id

0 ответов

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