Когда мы изначально разрабатывали наш проект, у нас было несколько объектов, которые на сегодняшний день не используются (и мы не планируем их реализовать в ближайшем будущем). Ergo Я хочу удалить их из своего проекта. Я бы сделал следующее (все шаги выполнялись вручную):
src/Resources/config/doctrine
src/Entity
Что я хотел бы знать: Существуют ли какие-либо подпрограммы (например, консольные команды), которые могут поддерживать эту процедуру? Например, если я запускаю
php app/console doctrine:schema:update --dump-sql
после удаления всех отношений и удаления файлов, я получаю инструкцию SQL, которая удаляет соответствующие таблицы (таблицы)?
Ваши действия по удалению объекта в порядке.
Вы не можете удалить таблицу из Doctrine, поскольку Doctrine не знает об этом. Посмотрите на этот вопрос:
Удаление таблицы с помощью Doctrine2 и Symfony2
После удаления объектов из вашего кода вы можете использовать следующую консольную команду для удаления таблиц:
php bin/console doctrine:schema:update --complete --dump-sql
Обратите внимание на использование опции --complete
.
Вот соответствующие части из doctrine:schema:update
текст справки:
Опции:
--complete
Если определено, все активы базы данных, которые не относятся к текущим метаданным, будут удалены.
[…]Помогите:
[…]
Наконец, имейте в виду, что если опция
--complete
передана, эта задача будет удалять все базы данных (например, таблицы и т. Д.), Которые не описываются текущими метаданными. Другими словами, без этой опции эта задача оставляет нетронутые любые «лишние» таблицы, которые существуют в базе данных, но которые не описываются никакими метаданными.Подсказка. Если у вас есть база данных с таблицами, которые не должны управляться ORM, вы можете использовать функциональность DBAL для фильтрации таблиц и последовательностей на глобальном уровне:
$config->setFilterSchemaAssetsExpression($regexp);
для удаления таблицы в symfony 3 вы можете просто запустить миграцию, и таблица, которая не используется, будет удалена из БД:
php bin/console doctrine:migrations:diff php bin/console doctrine:migrations:migrate