我正在尝试将现有的 oracle 表映射到新的 Grails 域对象。我也有一个现有的序列。调用“run-app”时出现错误:
Unsuccessful: create sequence hibernate_sequence
ORA-01031: insufficient privileges
我的目标是使用现有序列,而不是创建新序列。郑重声明,这是我第一次尝试 Grails/Groovy。
我的域对象如下所示。表名称是 Uicc_Inv_Detail
。 PK 是 UICC_INV_DETAIL_ID
。其他列与 Uicc 类中的名称相同。序列名称是 Uicc_Inv_Detail_Seq
。
我假设我的整个“id 生成器”部分是错误的。
class Uicc {
String id
String iccid
String imsi
static mapping = {
version false
table 'Uicc_Inv_Detail'
id generator: 'sequence',column:'UICC_INV_DETAIL_ID',
params: [table: 'Uicc_Inv_Detail_Seq', column: 'nextval']
}
static constraints = {
}
}
最佳答案
使用:
id generator:'native', params:[sequence:'Uicc_Inv_Detail_Seq']
这是文档: http://grails.org/doc/2.0.x/ref/Database%20Mapping/id.html http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/mapping.html#mapping-declaration-id-generator
关于grails - 将 Grails 域对象映射到 JDBC 表/序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13299691/