列名称无效 'saleStatus_id'

Invalid column name 'saleStatus_id'

使用迁移我创建了一个名为 sale_status

的 table
public class SaleStatus {
    @Id
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    private short id;
    private String description;

make_sale

public class MakeSale {
    @Id
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    private long id;
    @Column(columnDefinition = "NVARCHAR(MAX) NULL")
    private String detail;
    @Column(name = "application_date")
    private java.time.LocalDateTime applicationDate;
    @OneToOne
    private SaleStatus SaleStatus;

目前,我在 table 中有 sale_status_id 但它要求 saleStatus_id 字段名称全部为下划线,但是当我尝试插入数据时出现上述错误。我该如何解决?

错误详情为

[nio-8085-exec-1] o.h.engine.jdbc.spi.SqlExceptionHelper   : Invalid column name 'SaleStatus_id'.
2021-08-31 14:03:34.099 ERROR 42928 --- [nio-8085-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet]

创建关系后,JPA 会使用标准命名约定对其进行映射。如果您需要以其他方式命名列,您总是可以告诉 JPA 它是如何被调用的。对于您的情况,您可以添加一些信息:

@OneToOne
@JoinColumn(name = "sale_status_id", referencedColumnName = "id")
private SaleStatus SaleStatus;