假设在rails上的ruby中的迁移只是对任何数据库的更新是正确的。并且rake db:migrate脚本仅用于实现这些更改吗?
答案 0 :(得分:2)
是
迁移是您更改数据库的便捷方式 结构化和有组织的方式您可以编辑SQL的片段 然后你会负责告诉其他开发者 他们需要去运行它们。你还必须跟踪 下次需要对生产机器进行哪些更改 你部署。
Active Record会跟踪已经运行过哪些迁移 要做的就是更新源代码并运行rake db:migrate。活性 记录将确定应运行哪些迁移。它也会 更新db / schema.rb文件以匹配数据库的结构。
迁移还允许您使用来描述这些转换 红宝石。关于这一点的好处是(像大多数Active Record一样) 功能)它独立于数据库:您不必担心 关于CREATE TABLE的精确语法比你担心的更多 SELECT *的变体(您可以下拉到数据库的原始SQL) 具体特点)。例如,您可以在开发中使用SQLite3, 但MySQL正在制作中。