【问题标题】:Migrations: What is actually moving from point A to point B in migrations?迁移:迁移中从 A 点到 B 点的实际移动是什么?
【发布时间】:2017-08-28 22:39:14
【问题描述】:

在 Active Record 中,当我们处理迁移时,究竟是什么在移动?当我想到迁移时,我会想到从 A 点移动到 B 点的东西,比如英语中的常见含义。我无法看到我的研究中发生了什么。

【问题讨论】:

    标签: ruby-on-rails ruby activerecord sinatra sinatra-activerecord


    【解决方案1】:

    数据库迁移上下文中的迁移是一个抽象概念,而不是“移动”数据。在数据库迁移中,我们将数据库概念化为处于状态 A 并“迁移”到状态 B。

    例如,当我们向表中添加新字段时。状态A期间的表格是:

    ID | Field1 | Field2
    1  | foo    | bar
    2  | foo2   | bar2
    

    当我们添加字段时,数据并没有真正被移动,但我们可以概念化数据是从上述状态A“移动”或“迁移”到B的新表状态:

    ID | Field1 | Field2 | Field3
    1  | foo    | bar    | nil
    2  | foo2   | bar2   | nil
    

    【讨论】:

    • 感谢您提出状态。这不是我考虑过的概念
    猜你喜欢
    • 2015-12-22
    • 1970-01-01
    • 2014-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多