gpt4 book ai didi

spring-boot - 创建的数据库中不存在外键

转载 作者:行者123 更新时间:2023-12-05 08:09:51 27 4
gpt4 key购买 nike

我在 jpa 中创建了许多实体。当我检查数据库时,我没有看到任何外键。

@Entity
public class Lodger implements Serializable {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long lodgerId;

@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "lodger")
private List<AccountOperation> accountOperationList;
...
}

@Entity
public class AccountOperation {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long accountOperationId;

@ManyToOne
@JoinColumn(name = "lodger_id")
private Lodger lodger;
...
}

在这个例子中,我想在账户操作类中获取一个外键。

表格自动创建 http://www.wepaste.com/table_example/

为什么?

最佳答案

Hibernate 在生成 dll 时不会自动生成 foregein keys。我建议关闭 generate-dll 选项,因为随着复杂性的增加,它可能会创建不一致的数据库。还要检查 spring boot 默认数据库管理选项:

两者之间的主要区别在于,虽然两者都可以使用 SQL 进行管理,但 Liquibase 提供了更多与数据库无关的格式,例如 XML 和 YML 用于创建数据库

关于spring-boot - 创建的数据库中不存在外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31344383/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com