gpt4 book ai didi

grails - 从Groovy数据库迁移中调用Grails服务

转载 作者:行者123 更新时间:2023-12-02 15:25:39 25 4
gpt4 key购买 nike

使用Grails 2.3.9,我试图在数据库迁移变更集中实施常规变更。它使用Grails服务生成UUID。

dbm-update执行失败,并显示“事务完成后无法使用连接代理”错误。

变更集:

changeSet(author:"sola", id: "gefc.currency.defaultGlobalBaseCurrency.v49") {
grailsChange {
change {
def igs = ctx.getBean("idGeneratorService")

sql.withBatch(20,
"INSERT INTO core_setting_value " +
" (id, version, module, scope, code, " +
" string_value, boolean_value, long_value) " +
"VALUES " +
"(?, 0, 'gefc.currency', 'global', ?, ?, ?, ?)"
) { ps ->
ps.addBatch(igs.uuid(), "baseCurrency", \
"HUF", null, null)
}

confirm 'Base currency configuration (global setting)'
}
}
}

最佳答案

根本问题是变更中的常规代码干扰了Liquibase(运行变更集)的事务管理。

在使服务方法成为非事务方法之后,变更集运行良好。

关于grails - 从Groovy数据库迁移中调用Grails服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27981441/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com