Symfony 所有数据都将更改同一个表,并且数据库中没有任何更改

Symfony 所有数据都将更改同一个表,并且数据库中没有任何更改,symfony,doctrine,database-migration,Symfony,Doctrine,Database Migration,关于symfony 4.3(条令2.10) 所有迁移都包含相同的行,即使没有实体更改 例如: ALTER TABLE file\u master CHANGE file\u name file\u name VARCHAR(255)默认为NULL') 你有同样的问题吗 Tkx。 塞德里克这可能与这个特定的问题有关:在学说中 一个似乎有效的解决方法是确保如果实体的任何字段都有一个包含默认值的选项参数,它应该像这样等于1,而不仅仅是一个键(选项={“默认值”}): 看 希望这有帮助我对mariadb

关于symfony 4.3(条令2.10)

所有迁移都包含相同的行,即使没有实体更改

例如:

ALTER TABLE file\u master CHANGE file\u name file\u name VARCHAR(255)默认为NULL')

你有同样的问题吗

Tkx。
塞德里克

这可能与这个特定的问题有关:在学说中

一个似乎有效的解决方法是确保如果实体的任何字段都有一个包含
默认值的
选项
参数,它应该像这样等于
1
,而不仅仅是一个键(
选项={“默认值”}
):


希望这有帮助

我对mariadb数据库也有同样的问题。我更改了doctor.yaml文件中的数据库版本,它对我有效:

doctrine:
    dbal:
       server_version: 'mariadb-10.4.7'

我从phpMyAdmin获取服务器版本。在此之前,该值为“5.7”

如果您使用的是MariaDB,则这里有一篇关于该问题的文章:


我已经解决了这个问题,只需将服务器_版本完全从条令配置中删除。否则,您必须指定mariadb版本,例如“mariadb-10.3.18”,而不是mysql版本。

谢谢,但不起作用。我们现在有:'更改表文件\主更改文件\名称文件\名称VARCHAR(255)默认值'1\''';。。或
mariadb-10.4.8
。但它也可以通过简单地指定源于MySQL版本控制的
8.0
来工作
doctrine:
    dbal:
       server_version: 'mariadb-10.4.7'