Hibernate之Table ‘xxx.hibernate_sequence‘ doesn‘t exist异常
作者:互联网
Hibernate之Table ‘xxx.hibernate_sequence‘ doesn‘t exist异常
异常截图
使用Hibernate jpa操作Mysql出现如下异常:
原因分析
表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