我是使用Rails和迁移的新手。我们的申请尚未完全实现。
在我们的一个Prod数据库表中,我们有一些不良数据(作为早期测试的结果)。
我们无法访问Prod数据库/服务器,因此我们的团队建议创建迁移,其他人建议使用seeds.rb。
是否更好 -
1.为它创建迁移,或者
2.在seeds.rb中包含一些代码(稍后删除该代码)或
3.请求Prod管理员使用'rails console'或
直接在Prod服务器上删除
4.请求数据库管理员使用Sql直接在数据库中删除
迁移是否用于删除数据?对此有最佳实践指导吗?
答案 0 :(得分:1)
迁移不对数据库内容进行操作,而是对数据库结构进行操作。对表及其列/索引的每次更改都会按时间顺序反映在迁移文件中。在创建所有架构信息后执行迁移以删除数据时感觉错误。首先不应该有数据。
我会将生产数据库清除为干净状态。在部署时,您可能已经运行rake db:migrate
命令来调整开发中所做的所有数据库更改。这会导致重新创建所有表,并且由于之前删除了所有数据库内容,因此您拥有最新的模式,但没有任何遗留内容。