Grails 数据库迁移 - dbm-gorm-diff 不工作

标签 grails database-migration grails-2.3

我在新项目中使用带有数据库迁移插件的 Grails 2.3.5 来了解它是如何工作的。但有时 dbm-gorm-diff 提供空的更改日志文件,即使更改也在那里。 例如,

我有没有任何属性的人域类。 最初创建更改日志时,它会在更改日志中创建 2 个字段 id 和 version。 之后,将 2fields name,age 添加到那个 person 类中。然后执行 dbm-update 和 dbm-gorm-diff,如下所示。

数据库变更日志 = {

有时会给出更改。有时不起作用。请帮我。为什么它是这样工作的。抱歉英语不好。

最佳答案

使用以下 tutorial为我工作。确保删除 dbCreate来自你的 DataSource.groovy .根据tutorial工作流程如下:

设置

  1. 删除 dbCreate来自 DataSource.groovy
  2. 最初运行 grails dbm-generate-gorm-changelog changelog.groovy
  3. 通过运行 grails dbm-changelog-sync 将更新日志与您的数据库同步

更改域

  1. 更改域类
  2. 运行 grails dbm-gorm-diff <your-filename>.groovy --add
  3. 运行 grails dbm-changelog-sync

希望对你有帮助

关于Grails 数据库迁移 - dbm-gorm-diff 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23645719/

相关文章:

validation - 在Grails域对象中,是否可以基于另一个字段来验证一个字段?

spring - 带有spring-security-oauth2-provider:4.0.0-RC1的Grails 4

azure - 找到的数据库名称

php - 用户 'homestead' @'localhost' 的访问被拒绝(使用密码 : YES)

grails - Grails Routing-JMS插件-部署到weblogic中时出现问题

javascript - Grails 使用 d3.js 加载大 csv 文件时出错

grails - 将Grails逻辑从 View 移动到 Controller

django - 将南迁移与 IBM Bluemix 结合使用

hibernate - "Where query"在生产中创建错误的 SQL

Grails 2.3.1 没有运行