EF迁移中的错误最好是回滚、删除、重新添加或只是简单地添加新的

本文关键字:添加 迁移 简单 EF 错误 删除 新添加 | 更新日期: 2023-09-27 18:02:09

我创建了一个大型迁移,它创建了我的初始模式并运行了数据库更新。

之后我注意到一个应该是DateTime类型的字段意外地是string类型的。我在我的模型中修复了它。

现在,我应该将数据库更新为有错误的数据库之前的迁移,删除错误的迁移,然后再次重新添加迁移。或者只是简单地添加一个只修补修复的新迁移。

我倾向于回滚,删除,然后重新添加的原因是因为我不想要任何错误信息的混乱迁移,不是吗?我觉得有不正确的迁移是没有意义的。

我相信我之所以感到困惑,是因为我从未在生产环境中使用过迁移,所以我认为我没有意识到它们的强大功能。所以我想有人澄清旧的迁移是否可以有错误,或者如果他们都应该没有错误,并显示数据库的整个进度,因为我添加新的模型/实体。

EF迁移中的错误最好是回滚、删除、重新添加或只是简单地添加新的

迁移只是一个帮助您在模式更改之间保存数据的工具。对于管理多个数据库服务器,如开发/测试/生产或团队环境中的开发-本地数据库,它们特别方便。

如果你只有一个服务器,那么重写迁移是很便宜的,所以继续用这种方式来纠正它。

如果团队中的每个人都已经应用了迁移,或者您已经将它应用到包含您想要保留的数据的数据库中,那么使用新的迁移来更新列会更简单。

换句话说,使用迁移没有正确或错误的方法,只有与重写历史记录相关的成本。