EXPERTS

Команда консоли doctrine:schema:update

Описание:

Выполняет (или выводит) запрос SQL, необходимый для обновления схемы базы данных, чтобы соответствовать текущему маппингу метаданных


Использование:

doctrine:schema:update [options]


Опции:

--complete Если определено, все ресурсы базы данных, которые не имеют отношения к текущим метаданным, будут удалены
--dump-sql Вывести сгенерированные операторы SQL на экран (не выполнять их)
-f, --force Вызывает физическое выполнение сгенерированных операторов SQL в вашей базе данных
--em[=EM] Используемый менеджер сущностей
Общие для всех команд опции:
-h, --help Показать справочную информацию
-q, --quiet Не выводить никаких сообщений
-V, --version Показать версию, среду и режим Symfony
  --ansi Принудительное включение отображения ANSI цветов на терминале
  --no-ansi Отключение отображения ANSI цветов на терминале
-n, --no-interaction Запретить интерактивные вопросы
-e, --env=ENV Название среды
  --no-debug Отключение режима отладки
-v|vv|vvv, --verbose Объем выводимой информации: 1 для нормального вывода, 2 для более подробного вывода и 3 для отладки

Справка:

Команда doctrine:schema:update генерирует запрос SQL, необходимый для синхронизации схемы базы данных с текущими метаданными маппинга менеджера сущностей по умолчанию.

Например, если вы добавите метаданные для нового столбца в сущность, эта команда сгенерирует и выведет запрос SQL, необходимый для добавления нового столбца в базу данных:

doctrine:schema:update --dump-sql

Кроме того, вы можете выполнить сгенерированные запросы:

doctrine:schema:update --force

Если указаны обе опции, запросы выводятся и затем выполняются:

doctrine:schema:update --dump-sql --force

Имейте в виду, что если передан параметр --complete, это задание удалит все активы базы данных (например, таблицы и т. д.), которые не описаны в текущих метаданных. Другими словами, без этой опции это задание оставляет нетронутыми любые «лишние» таблицы, которые существуют в базе данных, но которые не описываются никакими метаданными.

Подсказка: если у вас есть база данных с таблицами, которая не должна управляться ORM, вы можете использовать функциональность DBAL для фильтрации таблиц и последовательностей на глобальном уровне:

$config->setFilterSchemaAssetsExpression($regexp);