【问题标题】:Grails Database Migration Load DataGrails 数据库迁移加载数据
【发布时间】:2012-01-15 11:21:01
【问题描述】:

我最初创建了一个变更集,如果它与我的 grails 应用程序同步,它会将国家/地区加载(通过 loadData)到我的数据库中。现在我已经有一个在生产模式下运行的系统,并且想要更改加载的国家/地区的初始数据。

例如,国家现在只有 2 列而不是 4 列,因为不再需要其他列。我怎样才能最好地处理这个问题?

我已经更改了原始变更集,但这不是一个好主意,因为我现在只收到错误。

更新: 对不起,我没有在我的帖子中提到它。我已经在使用正在使用 liquibase 的数据库迁移插件。

感谢您的帮助

【问题讨论】:

    标签: grails grails-plugin database-migration


    【解决方案1】:

    如果您需要更改数据库,正确的过程是创建新的迁移,而不是尝试更改旧的。

    如果您创建了一个迁移来加载包含四列的数据,那么您应该创建一个迁移来将额外的列减少到两列。如果生产数据库与开发数据库不同(例如已经有两列),您可以创建一个带有 failOnError=false 的迁移来同步它们。保留单独加载数据的迁移。

    【讨论】:

      【解决方案2】:

      你可以使用liquidbase - http://www.grails.org/plugin/liquibase

      或在 sql 中编写您自己的 alter 语句以删除不需要的列。

      希望对您有所帮助。

      【讨论】:

        猜你喜欢
        • 2017-01-08
        • 2011-05-22
        • 1970-01-01
        • 2011-01-07
        • 2015-12-25
        • 1970-01-01
        • 2017-05-26
        • 2012-05-20
        相关资源
        最近更新 更多