database - Grails 自动约束更新

标签 database hibernate grails grails-orm

grails 有自动约束更新吗?如果我们通过添加约束将域类中的字段更改为可为空,则在没有模式导出的情况下它不会反射(reflect)在数据库中。是否有可能让 grails 自动执行此更新。

最佳答案

不,Grails/Hibernate 不会自动更新您的数据库模式(添加新属性等简单情况除外),因为这不是可以可靠地自动化的任务(尤其是在更改数据类型或约束的情况下)。如果将属性的数据类型从 String 更改为 int,Hibernate 应该如何处理现有数据?

所以,这些东西必须手动完成。但是,有工具支持,即 Autobase plugin , 这是基于 liquibase .如果您曾经使用 RoR 进行过开发,那么您可能对迁移很熟悉——这实际上就是 autobase 所提供的。我绝对可以推荐 autobase/liquibase,我们在所有生产项目中都在使用它。

关于database - Grails 自动约束更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2929286/

相关文章:

mysql - 如何进行MySQL数据库自动备份?

mysql - 基于字符串的部分匹配连接 MySQL 表

unit-testing - 在哪里配置 Grails 单元测试日志记录

mysql - 是否可以创建一个 hh :mm time column? 的表

mysql - 使用 Spring Data 在简约数据库中写入时出错

java - Hibernate只选择一些字段并映射到Map

java - Hibernate查询日期只比较月份

spring - 在 Tomcat 中热部署类文件

grails - 如何通过grails删除保存在文件夹中的文件?

database - 3D+ 嵌入式空间数据库选项