gpt4 book ai didi

java - Hibernate 在 varbinary 类型的列上加入实体?

转载 作者:行者123 更新时间:2023-11-30 07:34:42 25 4
gpt4 key购买 nike

我有 2 个表,它们都有一个名为 Token 类型为 varbinary 的列。当我尝试使用以下代码加入这些实体时,出现以下异常。

com.microsoft.sqlserver.jdbc.SQLServerException: The conversion from varbinary to BIGINT is unsupported.

加入 varbinary 列时是否会出现这种情况?

@Entity(name = "Token1")
@Table(name = "tblToken1")
public class Token1Entity {

@OneToOne(fetch = FetchType.EAGER, optional = false)
@JoinColumn(name = "Token", insertable = false, updatable = false, nullable = true)
private Token2Entity token2Entity;

// ....

最佳答案

大多数 RDBMS 不支持连接 CLOB/BLOB/BINARY/大字段等,事实上,许多 RDBMS 甚至不允许您像正常其他列一样选择它们

由于此异常是从数据库本身返回的,因此您可以打开 sql 调试并转储 SQL 语句,或者手动编写一个并交互运行它。我打赌这不会起作用。

如果该值确实可以用于连接,那么可能一端或另一端的数据类型错误。否则,您可能需要提出一个充分代表 varbinary 的派生键并加入它。当然,保持两者同步始终是一个问题,所以并不容易,可能不是您想听到的。

关于java - Hibernate 在 varbinary 类型的列上加入实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35564341/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com