我在这里有一个奇怪的错误...
我在此项目上配置了两个数据库,当我尝试保存到本地mysql存储库中时,出现标题错误。 另外,我正在使用远程oracle数据库。
Hibernate:
select
hibernate_sequence.nextval
from
dual
然后
[nio-8080-exec-9] o.h.engine.jdbc.spi.SqlExceptionHelper : Unknown table 'hibernate_sequence' in field list
数据库中没有名为hibernate.sequence的表,在类中没有属性。
@Id
@GeneratedValue
long id;
@Column(name = "customerid")
private String customerid;
@OneToMany(targetEntity = C_Portfolio.class, fetch = FetchType.LAZY, cascade = {CascadeType.ALL}, orphanRemoval=true)
@Fetch(FetchMode.SELECT)
private List<C_Portfolio> portfolios;
@Column(name = "date")
private LocalDate date;
@Column(name = "date_time")
private LocalDateTime datetime;
此外,保存之前一切似乎都还不错。当我检查要保存在调试器模式下的类时。它具有所有必需的值,而且一切似乎都不错。
答案 0 :(得分:0)
您仅在POJO中使用了@GeneratedValue,因此它会尝试查找有序列的序列。由于您未指定序列表名称,因此它将查找默认序列表“ hibernate_sequence”。
对于mysql,通过在POJO中进行如下指定来增加值:
@GeneratedValue(strategy = GenerationType.AUTO)
如果使用它,将生成一个名为hibernate_sequence的表,以提供ID序列的下一个数字。