Grails的架构出口确实产生DDL为特定的数据库中创建数据库模式的一个伟大的工作。 不过,我想做些什么,是有Grails的只是输出的DDL更新到已创建的模式,而不是DDL从头开始创建它。
我想它应该是可能的,因为Grails的确实有,如果你specificy实际更新架构的能力dbCreate = "update"
在您的数据源。
但我只想Grails的吐出它会跑的,而不是真正做到这一点,这样我就可以通过一个受控的方式SQL工具执行它自己。
Grails的架构出口确实产生DDL为特定的数据库中创建数据库模式的一个伟大的工作。 不过,我想做些什么,是有Grails的只是输出的DDL更新到已创建的模式,而不是DDL从头开始创建它。
我想它应该是可能的,因为Grails的确实有,如果你specificy实际更新架构的能力dbCreate = "update"
在您的数据源。
但我只想Grails的吐出它会跑的,而不是真正做到这一点,这样我就可以通过一个受控的方式SQL工具执行它自己。
作为@GreyBeardedGeek在评论中指出,该数据库迁移插件 (这是默认现在包括)可以生成“模式差异”,你所寻找的,它会比我们的香草多得多dbCreate = "update"
呢,因为Grails的本地数据库更新只依靠什么Hibernate提供,它是在它可以做的更新速度非常保守。
特别是,你正在寻找的数据库迁移插件的部分是dbm-update-sql
脚本,它会给你,它会运行更新DB到当前架构版本的SQL。
在一般情况下,我会强烈建议使用类似的数据库迁移插件的工具,因为它捆绑你的数据库架构与应用程序代码,您可以轻松地将其版本一起,而且还包括许多工具,使运行的更新要少得多痛苦,并允许回滚和自定义脚本需要按摩的事情。