当前位置: 首页 > 知识库问答 >
问题:

Hibernate联接表“无效列名”[重复]

伯建安
2023-03-14

我有两张桌子。CategoryMaster和PotentialProject

PotentialProject [potentialProjectID, typeOfProject]

CategoryMaster  [CategoryID, CategoryName]

我想加入typeOfProject和CategoryID。

@Entity
@Table(name="CategoryMaster")
public class CategoryMaster
{
    @Id
    @Column(name="CategoryID")
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private Integer CategoryID;
    private String CategoryName;

    @OneToOne
    @JoinColumn(name="typeOfProject")
    private PotentialProject potentialProject;

    //getter 
    //setter
}

@Entity
@Table(name="PotentialProject")
public class PotentialProject
{
    @Id
    @Column(name="PotentialProjectID")
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private Integer potentialProjectID;
    private int typeOfProject;

    @OneToOne(mappedBy="potentialProject")
    private CategoryMaster categoryMaster;

    //getter 
    //setter
}

hibernate中的错误消息是无效的列名TypeOfProject。请给我一些建议。谢谢你。

共有1个答案

马丰
2023-03-14

看来这是对的

@OneToOne(mappedBy="potentialProject")
private CategoryMaster categoryMaster;

但这是不正确的

@OneToOne
@JoinColumn(name="typeOfProject")
private PotentialProject potentialProject;

name是外键列的名称!所以您的代码应该是这样的

@OneToOne
@JoinColumn(name="fk_potential_project")
private PotentialProject potentialProject;
 类似资料:
  • 我有两张桌子。CategoryMaster和PotentialProject 我想加入项目类型和类别ID。 Hibernate中的错误消息是无效的列名typeOfProject。请给我一些建议。谢谢你。

  • 我的表的结构Product的列为productId,poductName和productPrice类别的列为categoryId,categoryName和categoryproducts的列为categoryId和productId

  • 问题内容: 我有3个bean:组织,角色,用户 角色-组织关系-@ManyToOne 角色-用户关系-@ManyToMany 组织机构: 角色: 用户名: 因此,我需要获取指定用户的所有组织(首先,我需要选择所有用户角色,然后选择具有此角色的所有组织) 我有一个实现此逻辑的sql语句(例如,我选择id = 1的用户): 如何使用hibernate命名查询机制实现此目的?谢谢! 问题答案: @Nam

  • 我有两个表:人员和帐户(一对多关系)。 这不是我第一次使用一对多关系,但我以前没有遇到过这个错误。 完整的StackTrace:

  • 我有两个数据帧df1(Employee表) 和 在我连接了df1.dept_id和df2.id上的这两个表之后: 同时将其保存在文件中, 它给出错误: 我读过有关使用字符串序列来避免列重复的信息,但这适用于要对其执行连接的列。我需要对未连接的列具有类似的功能。 有没有一种直接的方法可以将重复列嵌入表名以便保存? 我想出了一个解决方案,匹配两个df的列,并重命名重复的列,将表名附加到列名上。但是有直

  • 我有一个这样的数据帧(受这个问题的启发,设置略有不同): 基于此,我创建了两个新对象。每个都是原始数据帧的子集: 然后,我想连接这两个数据集,并从每个数据集获取< code>f列,如下所示: 然而,我得到了 而不是所需的< code>[Row(f=3,f=4),Row(f=None,f=2),Row(f=2,f=None)]或表示为表格: 有人知道如何解决这个问题吗?我必须把df1和df2存储在某