私はこれに対する答えを探してインターネット、本、フォーラムを精査しましたが、ここの誰かが助けてくれることを願っています.
教義でエンティティ注釈を使用して、標準の Symfony 2 プロジェクトをセットアップしています。私が抱えている問題は、日時型を含むエンティティが常に移行したいということです。したがって、データベースへの最初の移行後、 docrine:schema:update --dump-sql を再実行できますが、まだこれが表示されます:
ALTER TABLE log CHANGE date date DATETIME NOT NULL;
ALTER TABLE message CHANGE created_on created_on DATETIME NOT NULL, CHANGE updated_on updated_on DATETIME NOT NULL;
ALTER TABLE module CHANGE start_date start_date DATETIME DEFAULT '0000-00-00 00:00:00' NOT NULL, CHANGE end_date end_date DATETIME NOT NULL;
ALTER TABLE scheduled_commands CHANGE last_execution last_execution DATETIME NOT NULL;
ここに一日中座って移行を実行し、これを確認しても、同じままです。エンティティには特別なものはありません:
/**
* @var \DateTime
*
* @ORM\Column(name="start_date", type="datetime")
*/
private $startDate;
/**
* @var \DateTime
*
* @ORM\Column(name="end_date", type="datetime")
*/
private $endDate;
誰かがこれについて何か考えを持っていますか? 私は今、完全に困惑しています:(。
mysql セットアップも最新の 5.6.25 です
移行後の列構造は次のようになります
`start_date` | DATETIME | NOT NULL,
`end_date` | DATETIME | NOT NULL