grails - 保持从 Grails 域到数据库的列顺序

标签 grails grails-orm

当 Grails 从域对象创建表时,是否可以指定列顺序?我希望它保留域中指定的列顺序。相反,它似乎主要是按字母顺序排列的。我在 documentation 中找不到任何内容.我找到了 this article指定约束的详细信息,但这似乎并没有解决数据库列的问题。

例子:

class Foo {
    Long id
    String zee
    Integer baz
    Integer bar
}

我希望然后将数据库列排序为:
id | zee | baz | bar

相反,我更接近于:
id | bar | baz | zee

最佳答案

您始终可以在 Grails 之外创建数据库,并按您希望的任何顺序放置列,Grails 会很乐意使用您提供的模式(假设只有列顺序与默认情况下要创建的顺序不同)

正如@Burt 指出的,一个更好的选择是使用 database migration插件来创建(和管理)数据库。它使您可以以与数据库无关的方式对数据库进行细粒度控制,并且还具有使数据库架构和架构更改与代码一起版本化的巨大优势,以进行升级和回滚。

关于grails - 保持从 Grails 域到数据库的列顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11992869/

相关文章:

grails - 如何在 Grails 应用程序中使用具有自己的过滤器和非 Controller servlet 的库?

grails - 在grails的ftp服务器上上传文件

grails - 无法在Google浏览器中打开Grails应用

grails - 如何清除和替换 Grails/Groovy 中一对多关系中的集合

hibernate - 将 Grails 域类映射到 joinTable 的问题

Grails:addTo* 和removeFrom* 是否需要调用来保存?

grails - 如何在Grails中调整g:field类型=“number”的宽度长度

grails - Grails:旧版数据库-带有复合ID的记录不会更新

grails - 根据传递给 Controller ​​的参数动态创建查询

hibernate - 如何在条件中使用 'in' 来查询子对象?