其他分享
首页 > 其他分享> > Hibernate之Table ‘xxx.hibernate_sequence‘ doesn‘t exist异常

Hibernate之Table ‘xxx.hibernate_sequence‘ doesn‘t exist异常

作者:互联网

Hibernate之Table ‘xxx.hibernate_sequence‘ doesn‘t exist异常

异常截图

使用Hibernate jpa操作Mysql出现如下异常:

image-20220807105227003

原因分析

表hiberate_sequence的作用为当主键id增长方式选择以sequence方式时,那么表hibernate_sequence用于记录其他表的主键。
代码中实体注解为@GeneratedValue(strategy = GenerationType.AUTO),那么主键id增长方式交由了数据库自动选择,当数据库为Mysql是选择sqquence增长方式,那么就需要表hibernate_sequence记录其他表的主键。因为使用的数据库连接用户无操作数据库表结构的权限,那么hibernte不能自动生成表hibernate_sequence,导致出现异常。

解决方案

方案一:更换对数据库连接用户保证对数据库表结构具有操作权限,利用hibernate自动生成表hibernate_serquence。
方案二: 改变主键id的增长方式不使用sequence增长方式,利用注解@GeneratedValue(strategy = GenerationType.IDENTITY)让数据库使用自增id。


原文链接:https://blog.csdn.net/HelloWord_Lk/article/details/122740872

标签:Hibernate,sequence,数据库,xxx,id,hibernate,主键
来源: https://www.cnblogs.com/javaxubo/p/16558641.html