【问题标题】:Create foreign key with jpa使用 jpa 创建外键
【发布时间】:2016-05-26 16:09:22
【问题描述】:

所以当我运行我的项目时,User 表和Doc 表被创建,但我在Doc 表中没有看到User 表的外键。

如您所见,我有 ManyToOneOneToMany 注释,但尚未创建 User 的外键。

我该如何解决这个问题?

【问题讨论】:

  • 您在文档表中有Partenaire id吗?
  • Partenaire 不是表,因为您可以看到 Partenaire 扩展了 User 因此其 SINGLE_TABLE 策略所有 Partenaire 的属性都将添加到用户表中,该表将由字段 TYPE_USER 区分,而不是为它
  • 尝试多对一添加@JoinColumn(name = "XX")

标签: mysql spring jpa


【解决方案1】:

您需要添加@JoinColumn(name = "ID Column Name") 注释以及早淘宝提到的@ManyToOne 或@OneToMany 注释。这个注解决定了要用作 FK 的列的名称。

更多详情请参考此链接:http://docs.oracle.com/javaee/6/api/javax/persistence/JoinColumn.html

【讨论】:

  • 不,这不起作用 JoinColumn 只重命名了用于引用另一个表但没有 FK 的字段
猜你喜欢
  • 1970-01-01
  • 2020-11-04
  • 2018-08-14
  • 2012-08-08
  • 1970-01-01
  • 2012-12-04
  • 2012-02-01
  • 2020-07-05
相关资源
最近更新 更多