如何在Symfony 4中更新数据库?

时间:2018-05-07 14:19:58

标签: database symfony symfony4

当我发出以下命令时:

php bin/console doctrine:schema:update --force

数据库得到更新,但之后这个命令:

php bin/console doctrine:schema:validate

一直说数据库不同步(见下面的截图)。

我错过了什么/做错了什么?

error message

1 个答案:

答案 0 :(得分:2)

根据数据库类型和操作系统的不同,测试可能会给出一些错误的错误",这意味着您的数据库已经可以,但是Doctrine并不是很了解。它发生在我的几个项目中,无论Symfony版本(这意味着Symfony 2,3和4)。

此外,在Symfony 4中,您可以按照the docs中的说明使用迁移,即:

bin/console make:migration

此命令将在src/Migrations内创建一个迁移文件,但不会触及数据库。

要了解正在发生的事情(来自Doctrine的观点),您可以查看迁移文件:它是一个带有两种方法的PHP类(up()down())。

up()方法将包含将数据库与映射文件对齐所需的查询/查询。

要应用所有待处理的迁移,请运行:

bin/console doctrine:migrations:migrate