0

我正在尝试使用 Hibernate 和 JPQL 使用 Java 中的单个列将一个表与另外两个表连接起来。

例如,我有table A一个id专栏。我想加入并table B加入table C专栏。table Aid

但是,当我尝试这样做时,我收到以下错误: org.hibernate.exception.DataException: The value supplied cannot be converted to BIGINT. 我看到一些答案说可能有空值,但是这些 id 列是主要的 id 列,并且不包含空值。

我的代码如下:

@OneToOne(fetch = fetchType.LAZY)
@JoinColumn(name="id", insertable=false, updatable=false)
private TableB tableB

@OneToOne(fetch = fetchType.LAZY)
@JoinColumn(name="id", insertable=false, updatable=false)
private TableC tableC

当我删除两个连接之一时,一切正常。

我做错了什么导致这个问题?

4

1 回答 1

1

我不知道是什么类型id,但我认为它必须是 aLong才能让 Hibernate 将其转换为BIGINT

于 2012-10-12T20:51:35.780 回答