Grails:不正确的整数值:第1行的'scenarioId'列''''

时间:2012-01-25 12:48:53

标签: grails groovy gorm

这是迄今为止我遇到过的Grails& amp; GORM。

设置如下

class Scenario{ List connections = [] ... static hasMany=[connections:Connection]}

class Connection{ Scenario scenario; belongsTo=Scenario }

使用数据绑定设置多个连接时保存方案。看看变量一切看起来都很好。数据绑定,所有对象都显示正确。 然后我得到了这个例外:

 Incorrect integer value: '’' for column 'scenarioId' at row 1 

这是一个java.sql.SQLException。

这太奇怪了!我肯定确定方案ID不是,它是一个整数所以它怎么可能呢?!

Grails pro看起来我需要帮助!

编辑:我检查了sql日志,看起来scenarioId是作为VARBINARY插入的,这是错误的。不知道为什么要这样做......

1 个答案:

答案 0 :(得分:3)

尝试在数据库中插入hibernate实体时遇到了同样的错误。

Caused by: java.sql.SQLException: Incorrect integer value: '’' for column 'person' at row 1

我的问题是,在我的实体中,我定义了一个这样的列:

@Column(name = "person", nullable = false)
private Person person;

但它应该像那样定义:

@ManyToOne
@JoinColumn(name = "person", nullable = false)
private Person person;

问题是当我的实体插入数据库时​​,hibernate试图插入对象Person来代替来自Person的id字段。

也许你的问题是同一类问题?它代替插入一个整数,插入实体的字符串转换。