有没有人成功地将应用程序从Grails 2迁移到Grails 3,其中后端是Oracle,并且由于性能原因,您删除了groovy.Sql来执行插入。
我有针对Oracle 12c的Grails 2(hibernate 4)应用程序,我使用id映射生成器'sequence'并预先插入Oracle Trigger。
我在Grails 3(hibernate 5)上尝试了相同的方法,当我使用不带id字段的executeINSERT()时,我得到的错误如“找到1个参数占位符但提供0个参数”(总是关闭1)指定(这是它在grails 2中的工作方式)。
然而,CRUD工作正常。
我已经尝试过生成器'sequence-identity'但是这并没有将表创建ID更改为NUMBER GENERATED ALWAYS AS IDENTITY而不是NOT NULL,这是我期待它做的(尽管grails docs不明确地这样说)。 Oracle doc link
我已经尝试退回到休眠4但仍然有问题。
在我正式发疯之前,有什么想法吗?