【问题标题】:Laravel data migration to new structureLaravel 数据迁移到新结构
【发布时间】:2019-08-20 21:46:27
【问题描述】:

我们正在计划一次重大的数据库重组,而不是“创建”所有迁移都是“改变”已经存在的表。

例如:

有一个表 users 包含一列,例如role.

运行迁移后,此列将被删除,并且将使用 hasOne 关系创建表“角色”(仅作为示例)。

我应该如何将旧数据尽可能无缝地转换为新结构?

【问题讨论】:

    标签: laravel laravel-5 eloquent


    【解决方案1】:

    这取决于您工作的环境。例如,在生产级别,您不能只将这些值从一列移动到另一列,因为数据库正在大量使用客户。但例如,您可以创建迁移以仅创建角色表。然后创建一个新的migration,将每一行对应的角色复制到新创建的表(roles)中。

    角色

    user_id |角色id

    用户

    标识 |角色id

    将整个 role_id 从 users 表移动到 Roles 表后,您可以推送新的代码实现。

    我不太喜欢立即从 users 表中删除 role_id 列的想法。我建议将该列保留一段时间,直到您完成与该列相关的全部更改,然后您可以安全地删除它而不必担心它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-18
      • 2016-07-23
      • 1970-01-01
      • 1970-01-01
      • 2014-06-23
      • 1970-01-01
      • 2016-05-05
      • 2021-02-28
      相关资源
      最近更新 更多