Spring data jpa 报错: java.sql.SQLSyntaxErrorExceptoion: Table ' test.hibernate_sequence' doesn`t exists

📅 2021-09-13 11:13 👁️ 188 💬 0

错误信息如图:

image-20210912124916155

错误原因:在自定义主键是没有注明自增策略

解决办法:明确主键自增策略,比如

@Entity
@Table(name = "t_order")
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Order implements Serializable {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String customer;

    private Date orderDate;
}

扩展:Jpa GenerationType的四种类型

  • TABLE :使用一个特定的数据库表格来保存主键
  • SEQUENCE:根据底层数据库序列来生成主键,条件是数据库支持序列
  • IDENTITY:主键由数据库自动生成,数据库设置了自增主键
  • AUTO:主键由程序控制,是Jpa的默认策略,可以不写
登录后才能查看或发表评论, 立即 登录
点击右上角即可分享
微信分享提示