我有一个具有 ID 字段的实体:
@Id
@Column(name = "`U##ID_VOIE`")
@GeneratedValue(generator = "VOIE_SEQ")
private String id;
该类还定义了序列生成器:
@SequenceGenerator(name = "VOIE_SEQ", sequenceName = "VOIE_SEQ")
并且 Oracle 模式具有必要的序列。一切正常。
我们也有测试,它使用内存中的 HSQLDB。在运行测试之前,所有的表都是基于 Hibernate 实体类创建的。
但是,并未创建此特定类的表。并弹出错误,因为 ID 是一个字符串,而 HSQLDB 中的 SequenceGenerator 返回一个 INT / LONG / Numeric 值。
应用程序正在使用旧版 Oracle 数据库,并且 ID_VOIE 列必须保留为 String / Varchar。
有什么解决办法吗?