Редактировать: Оказывается, другие проекты на той же машине имеют ту же проблему.Вопрос касается одного конкретного проекта:
У меня есть проект Symfony4, в котором у меня есть несколько сущностей (созданных с помощью make:entity
).Я только что заметил, что последние 4 миграции имеют один и тот же запрос (и да, я запускаю миграции между ними).Пример:
$this->addSql('ALTER TABLE event CHANGE visible_from visible_from DATETIME DEFAULT NULL, CHANGE visible_till visible_till DATETIME DEFAULT NULL, CHANGE max_signups max_signups INT DEFAULT NULL');
Я выполнил этот запрос вручную, и это фактически обновило таблицу.Затем я создал новую миграцию для проверки: приведенный выше запрос снова был здесь.
Я очистил кэш, запустил doctrine:cache:clear-metadata
, дважды проверил на странные вещи, но все нормально.
У меня 3 одинаковых запроса каждый раз, и у всех них есть одна общая черта: они имеют nullable = true.Все остальные сущности не имеют nullable = true в них.
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $maxSignups;
Даунмиграция может быть подсказкой:
ALTER TABLE event CHANGE visible_from visible_from DATETIME DEFAULT \'NULL\',
This I find odd---^
Версия MariaDB: 10.2.14
PHP: 7.2.4
symfony / orm-pack: "^ 1.0"
Кто-нибудь знает, почему?