Doctrine 防止原则迁移差异删除表

Doctrine 防止原则迁移差异删除表,doctrine,doctrine-migrations,Doctrine,Doctrine Migrations,我目前正在“教条化”一个现有的大型数据库。这个过程运行得非常好,我们可以慢慢地用实体和DQL替换旧的原始查询代码 我们最近发现了令人敬畏的条令迁移项目,它似乎是管理数据库更改的完美候选。然而,我们遇到了一些困难 我们的数据库相当大,我们正在一点一点地重构应用程序的各个方面。我们目前约有40%的数据库表示为实体。问题是,当我们在部分转换的数据库上运行“diff”时,diff想要删除大量的表,因为这些表不存在实体。我们可以手动编辑差异,但它将变得相当麻烦,并且可能容易出错 问题是,;是否可以创建一个

我目前正在“教条化”一个现有的大型数据库。这个过程运行得非常好,我们可以慢慢地用实体和DQL替换旧的原始查询代码

我们最近发现了令人敬畏的条令迁移项目,它似乎是管理数据库更改的完美候选。然而,我们遇到了一些困难

我们的数据库相当大,我们正在一点一点地重构应用程序的各个方面。我们目前约有40%的数据库表示为实体。问题是,当我们在部分转换的数据库上运行“diff”时,diff想要删除大量的表,因为这些表不存在实体。我们可以手动编辑差异,但它将变得相当麻烦,并且可能容易出错


问题是,;是否可以创建一个diff并告诉diff流程不要删除任何不存在实体的表?

如果您使用的是Symfony2,您只需添加如下所述的配置:

在每个命令的基础上,您可以为那些应考虑差异的表指定正则表达式,如:

app/console doctrine:migrations:diff --filter-expression=/^t_/
(将仅为名称以
t
开头的表生成差异,并忽略另一个)