微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

迁移文件中所有多余的垃圾是什么?

如何解决迁移文件中所有多余的垃圾是什么?

| 我今天开始测试grails数据库迁移插件。我与域进行了初始同步,然后基于运行diff命令创建了一个新的变更日志。这本来应该很简单,例如重命名一列并(再)将索引分配给该列。所以我希望看到以下内容...
changeSet(author: \"gdboling (generated)\",id: \"1306242441630-1\") {
    addColumn(tableName: \"manuscript_review_reviewer\") {
        column(name: \"reviewer_id\",type: \"bigint\") {
            constraints(nullable: \"false\")
        }
    }
}
changeSet(author: \"gdboling (generated)\",id: \"1306242441630-2\") {
    addPrimaryKey(columnNames: \"manuscript_review_id,reviewer_id\",constraintName: \"manuscript_rePK\",tableName: \"manuscript_review_reviewer\")
}
changeSet(author: \"gdboling (generated)\",id: \"1306242441630-3\") {
    dropPrimaryKey(tableName: \"manuscript_review_reviewer\")
}
changeSet(author: \"gdboling (generated)\",id: \"1306242441630-4\") {
    dropForeignKeyConstraint(baseTableName: \"manuscript_review_reviewer\",baseTableSchemaName: \"manning_main_dev\",constraintName: \"FK9BEFBBB34863C659\")
}
changeSet(author: \"gdboling (generated)\",id: \"1306242441630-179\") {
    addForeignKeyConstraint(baseColumnNames: \"reviewer_id\",baseTableName: \"manuscript_review_reviewer\",constraintName: \"FK9BEFBBB3A28B41DF\",deferrable: \"false\",initiallyDeferred: \"false\",referencedColumnNames: \"id\",referencedTableName: \"user\",referencesUniqueColumn: \"false\")
}
changeSet(author: \"gdboling (generated)\",id: \"1306242441630-212\") {
    dropColumn(columnName: \"user_id\",tableName: \"manuscript_review_reviewer\")
}
一切都很好。但是,我也看到很多dropIndex和createIndex块与我的更改无关。有人知道为什么会这样吗?     

解决方法

在http://jira.grails.org/browse/GPDATABASEMIGRATION上写一个问题,其中包含要重现的信息(数据库供应商,最好是一些代码和您的数据库模式),我将看看可以做什么。最坏的情况是您需要将多个元素折叠为一个-这是棘手的工作,需要自动化,通常需要人工干预。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。