SpringBoot 使用 Hibernate 报错 'Unknown SEQUENCE: 'log_seq'' - MySQL 主键自增解决方案
这个错误可能是因为在 Hibernate 中使用了 SEQUENCE 策略,但是你的 MySQL 数据库中并没有定义相应的 SEQUENCE。
如果你的主键是自增的,可以在实体类中使用 @GeneratedValue(strategy=GenerationType.IDENTITY) 注解来指定主键自增策略。
例如:
@Entity
public class User {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long id;
//其他属性和方法
}
如果你需要使用 SEQUENCE 策略,可以在 MySQL 中创建一个 SEQUENCE,或者使用其他支持 SEQUENCE 的数据库,如 Oracle。
在 MySQL 中创建 SEQUENCE 的语法如下:
CREATE SEQUENCE log_seq;
然后在实体类中使用 @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="log_seq") 注解来指定主键生成策略和使用的 SEQUENCE。
例如:
@Entity
@SequenceGenerator(name="log_seq", sequenceName="log_seq")
public class Log {
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="log_seq")
private Long id;
//其他属性和方法
}
原文地址: https://www.cveoy.top/t/topic/oUml 著作权归作者所有。请勿转载和采集!