【问题标题】:Best strategy to initially populate a Grails database backend最初填充 Grails 数据库后端的最佳策略
【发布时间】:2011-01-20 01:32:16
【问题描述】:

我想知道您在最初填充将保存您的应用数据的 Grails 数据库时的方法/经验。假设您有包含数据的 CSV,那么创建一个脚本(使用适合您的任何工具)“更安全”:

1.-使用域类生成引导命令,在测试或开发环境中运行,然后使用本机db命令将其导出到产品?

2.-假设 GORM 的版本 = 0 并手动增加即将自动生成的 ID,创建数据库的插入脚本?

我担心第二种方法可能会导致不一致,因为 hibernate 将负责生成 ID,并且我可能还缺少其他一些东西。

提前致谢。

【问题讨论】:

    标签: database grails populate


    【解决方案1】:

    看看this 链接。这允许您在正常的 grails 上下文中运行 groovy 脚本,从而可以访问包括 GORM 在内的所有 grails 功能。我目前正在从遗留数据库中导入数据,并发现使用 Groovy SQL 接口编写 Groovy 脚本以提取数据然后将数据放入域对象中似乎是最简单的事情。导入数据后,您只需使用特定于数据库系统的命令将该数据移动到生产数据库。

    更新:

    显然,从我链接到的博客条目中引用的更新条目不再存在。我能够使用以下链接中的代码来完成这项工作,该链接也在 cmets 中被引用。 http://pastie.org/180868

    【讨论】:

    【解决方案2】:

    最后,似乎最简单的解决方案是认为 GORM 从当前版本 (1.2) 开始对所有自动生成的 id 使用单个序列。因此,在创建您需要的任何脚本(以您喜欢的语言)时考虑这一点就足够了。我知道 1.3 版本计划每个表都有自己的顺序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-25
      相关资源
      最近更新 更多