gpt4 book ai didi

java - 非唯一列上的 HIbernate onetoMany 映射

转载 作者:行者123 更新时间:2023-12-02 00:35:06 25 4
gpt4 key购买 nike

我有三个 table 玩家,比赛和媒体如下

Player
player_id-->PK
Media_id

Match
match_id-->PK
Media_id

Media
Media_internal_id --> PK
Media_id
Other_details

媒体 ID 是非唯一列,可以有重复值,并且它是连接列。现在我想加载与播放器关联的所有媒体对象

尝试了以下

Player{
@OneToMany
@Formula("SELECT * FROM MEDIA WHERE MEDIA_ID = MEDIA_ID")
private List<Media> media= new ArrayList<Media>();
}

存储库代码

@Repository
public interface PlayerRepository extends JpaRepository<Player, Integer>{

@Query(value=" SELECT P.* FROM PLAYER P ", nativeQuery=true)
public List<Player> findAllPlayer();

}

错误:

o.h.e.jdbc.spi.SqlExceptionHelper - Table 'tennis.PLAYER_media' doesn't exist

如何映射?

最佳答案

您只能使用主键来建立关系。

下面是单向示例。

Player{
@OneToMany
@JoinColumn(name = "player_id")
private List<Media> media= new ArrayList<Media>();
}

玩家:
player_id --> PK
其他_详细信息

媒体:
Media_id --> PK
player_id --> JoinColumn
其他_详细信息

关于java - 非唯一列上的 HIbernate onetoMany 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57985368/

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