我目前正在对现有的大型数据库进行“Doctrinizing”。这个过程运行良好,我们慢慢能够用实体和 DQL 替换旧的原始查询代码。
我们最近发现了很棒的 Doctrine Migrations 项目,它似乎是管理数据库更改的完美候选者。然而,我们遇到了一些障碍。
我们的数据库非常大,我们正在一点一点地重构应用程序的各个方面。我们目前有大约 40% 的数据库表示为实体。问题是当我们在部分转换的数据库上运行“差异”时,差异想要删除大量表,因为这些表不存在实体。我们可以手动编辑差异,但它会变得非常麻烦并且可能容易出错。
问题是; 是否可以创建一个差异并告诉差异过程不要删除任何不存在实体的表?