Просто изменить модель, как у вас выше, не будет работать, старые данные будут по-прежнему в другом строке в БД.
Очень похоже на предыдущий ответ, одна из вещей, которые я сделал, чтобы сделать эту миграцию прежде, это сделать это динамически, пока система работает и используется пользователями.
Я отделил слой данных от логики, поэтому он позволил мне добавить несколько препроцессоров и внедрить код для выполнения следующих действий.
Допустим, мы начинаем со старой модели данных, а затем выпускаем новый кодэто делает следующее: при каждом доступе к документу вам нужно будет проверить, существует ли встроенное свойство, если оно существует, создать новую запись, связанную как ссылку, сохранить в базе данных и удалить внедренное свойство из документов.Как только это было сделано в течение нескольких дней, многие мои данные были перенесены, а затем мне просто нужно было запустить аналогичный скрипт для всего, что не было затронуто, сделало работу по переносу данных намного проще и проще, а у меня не былозапускать долго выполняющиеся сценарии или отключать систему для выполнения преобразования.
У вас может не быть этого требования, поэтому выберите соответственно.