Переименуйте имя таблицы с помощью миграции доктрин

Я искал почти везде, но ничего не смог найти.

Есть ли команда или процедура для изменения имени таблицы (так внутри аннотации доктрины) без потери данных?

В основном, то, что будет производить что-то вроде

RENAME TABLE old_table TO new_table;

или же

ALTER TABLE old_table RENAME new_table;

MySQL команды взяты отсюда

Должен ли я написать вручную файл миграции с doctrine:migrations:generate?

1 ответ

Решение
  1. Изменить имя таблицы для данного объекта.

    /** @Entity @Table(name="new_table_name") */
    class MyEntity { ... }
    
  2. Создайте новую миграцию.

  3. Стереть содержимое up() а также down() методы и заменить их на пользовательский SQL (ALTER TABLE ... RENAME TO ...).

Имейте в виду, что генератор миграции подразумевается как утилита / полуавтоматический инструмент.

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