在Grails2.0中为域对象使用分配的ID
我们将Grails与遗留数据库一起使用,我们需要控制如何将ID分配给域对象 我们已尝试:在Grails2.0中为域对象使用分配的ID,grails,gorm,grails-2.0,Grails,Gorm,Grails 2.0,我们将Grails与遗留数据库一起使用,我们需要控制如何将ID分配给域对象 我们已尝试: id column: "sco_id", generator:'assigned' 但我们有一个例外: 批更新从更新[0]返回了意外的行计数;实际行 计数:0;预期:1 我们还尝试创建自定义ID生成器: public class ScoIdGenerator implements IdentifierGenerator { public Serializable generate(Session
id column: "sco_id", generator:'assigned'
但我们有一个例外:
批更新从更新[0]返回了意外的行计数;实际行
计数:0;预期:1
我们还尝试创建自定义ID生成器:
public class ScoIdGenerator implements IdentifierGenerator {
public Serializable generate(SessionImplementor session, Object object) {
/*Generate ID here*/
return 8;
}
}
但在这种情况下似乎忽略了生成器,所以我们得到了错误
DEFAULT keyword cannot be used as column has no DEFAULT
我不确定这些问题是否特定于Grails2
感谢您的帮助吗?这里的问题是我们试图用columns块配置id
static mapping = {
table "table_name"
columns {
id generator: 'assigned', column: "id_sco", sqlType: "int"
}
}
相反,我们需要直接在静态映射块内配置id
static mapping = {
table "table_name"
id generator: 'assigned', column: "id_sco", sqlType: "int"
columns {
...
}
}
这里的问题是我们试图用columns块配置id
static mapping = {
table "table_name"
columns {
id generator: 'assigned', column: "id_sco", sqlType: "int"
}
}
相反,我们需要直接在静态映射块内配置id
static mapping = {
table "table_name"
id generator: 'assigned', column: "id_sco", sqlType: "int"
columns {
...
}
}
感谢您发布详细的答案。有一天,它可能会帮助与你有同样问题的人!感谢您发布详细的答案。有一天,它可能会帮助与你有同样问题的人!